flutter跨端开发for Web、Windows Q&A
Q1 开发环境运行web 解决跨域问题
问题描述 :
常见于本地调试项目 本地项目 10.125.10 如图所示 请求项目接口
解决方案:
开发环境运行web 解决跨域问题 flutter run -d chrome --web-browser-flag "--disable-web-security"
Q2 web&windows不同环境打包?
解决方案
配置对应环境main方法
以Windows为例🌰(web发版的时候一定要打生产包!)
打包 flutter build windows
打uat包 flutter build windows lib/main_uat.dart
具体如下图所示
Q3 Windows开发踩坑
1.部分设备运行时缺少dll错误
手动下载dll放入项目根目录 一起压缩
- Windows内嵌web相关问题解决
2.1 windows控件选择
只推荐使用webview_windows(截止2023/11/16) 其他适用于Windows的内嵌webview库有坑/用不了
2.1.1通信
接受信息
_controller.webMessage.listen((event) {
logic.analysisWebMessage(event, _controller);
});
发送信息
controller.postWebMessage(json.encode('inWindows'));
2.1.2注入js
//注入js 获取高度
logic.webviewHeight =
await _controller.executeScript("document.body.scrollHeight");
2.2滑动不了
内嵌网页自适应了控件大小 让其放开
2.3 内嵌的网页选择框不可用
表现形式 选择框透传点击没反应 或不灵敏
解决方案 更换选择框 表现形式