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也可。

相关推荐
袁代码11 小时前
Swift 开发教程系列 - 第10章:泛型
开发语言·ios·swift·ios开发
袁代码11 小时前
Swift 开发教程系列 - 第12章:协议与协议扩展
开发语言·ios·swift·ios开发
袁代码14 小时前
SwiftUI开发教程系列 - 第1章:简介与环境配置
开发语言·ios·swiftui·swift·ios开发
hai4058715 小时前
Flutter & 鸿蒙next 中使用 MobX 进行状态管理
flutter·华为·harmonyos
OurAndroidSky15 小时前
【Flutter 内嵌 android 原生 View以及相互跳转】
android·flutter
@福者16 小时前
Flutter 主流常用第三方库、插件收集
flutter·flutter三方库收集·主流三方库·常用三方库
iFlyCai20 小时前
Flutter 中 Provider 的使用指南
flutter·dart
西瓜本瓜@20 小时前
iPhone 17版本的开发者权限如何开启?
开发语言·ios·iphone
海绵波波10720 小时前
Webserver(5.4)项目整体
c++·ios·iphone
HH思️️无邪20 小时前
iOS SmartCodable 替换 HandyJSON 适配记录
ios·swift