Flutter开发iOS问题记录

一、版本适配问题

warning: The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 10.0, but the range of supported deployment target versions is 12.0 to 17.2.99. (in target 'Protobuf' from project 'Pods')

可以通过在podfile中配置解决。

yaml 复制代码
post_install do |installer|
  installer.pods_project.targets.each do |target|
    flutter_additional_ios_build_settings(target)
      target.build_configurations.each do |config|
      config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '12.0'
    end
  end
end

二、Build问题

Run script build phase 'Thin Binary' will be run during every build because the option to run the script phase "Based on dependency analysis" is unchecked. (in target 'Runner' from project 'Runner')

可以通过修改build settings设置解决。

三、启动图问题

Flutter启动iOS使用LaunchScreen.storyboard时布局错乱显示出两张不同的启动图,如果使用拖线布局可能会产生此问题;

Flutter在启动时会加载一次闪屏,默认显示与Info.plist中对应的UILaunchStoryboardName。

使用LaunchScreen.storyboard时避免使用Safe Area Layout Guides,Flutter可能会不识别。

四、真机调试问题

在iOS 14+系统真机以调试模式运行App,在断开调试后App无法打开;

原因是Debug模式下,Flutter也实现了热重载,默认编译方式为JIT,而iOS 14+系统对这种编译模式做了限制,导致无法启动;

可以通过更改Xcode编译模式:Xcode使用Release模式编译,这个时候Flutter编译方式为AOT,可正常启动。

不更改Xcode编译模式,更改Flutter编译配置,强制设置为release也可。

相关推荐
茶底世界之下2 天前
为什么预览、录制、离线导出不能共享同一个背压策略?
ios·swift
2501_916007472 天前
苹果商店iOS应用上架费用全面解析:开发者计划与审核费用计算
android·ios·小程序·https·uni-app·iphone·webview
君赏2 天前
棉宇宙 Flutter 热更新是如何落地的
flutter
2501_916008892 天前
如何实现iOS App代码混淆:SwiftShield使用指南
android·ios·小程序·https·uni-app·iphone·webview
2501_915909062 天前
移动端开发工具链怎么组合比较好,iOS、Android、跨端三套配置方案
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
恋猫de小郭2 天前
AndroidX 新增 Security State ,支持可编程的系统安全状态查询
android·前端·flutter
zihan5182 天前
自己做软件日记9/21 得到了一个良好的文件结构框架
后端·flutter·前端框架·android studio
2501_916008892 天前
怎么用 Godot 导出 iOS 应用并上架 App Store?签名字段该填什么?
android·ios·小程序·https·uni-app·iphone·webview
2501_915918412 天前
iOS编程用什么软件好?主流工具Xcode、AppCode、CodeRunner与新兴快蝎对比
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
终端安全笔记3 天前
iOS 27 之后「策略空转」:设备升级不报错,但旧策略不再管它
android·网络·安全·ios·智能手机