问题分析
-
现象:在iOS 14+系统真机以调试模式运行App,在断开调试后,进入Flutter页面时出现如下界面
-
原因
- Debug模式下,Flutter也实现了热重载,默认编译方式为JIT
- 而iOS 14+系统对这种编译模式做了限制,导致无法启动
解决方案
- 更改Xcode编译模式:Xcode使用Release模式编译,这个时候Flutter编译方式为AOT,可正常启动。
- 不更改Xcode编译模式
-
更改Flutter编译配置,强制设置为release,如下图:
- 打开
xcode_backend.sh
文件,按红框的方式修改(改了后会导致调试数据不会被打印)
-