Flutter打包IOS相关问题记录
Posted 白玉梁
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Flutter打包IOS相关问题记录相关的知识,希望对你有一定的参考价值。
GitHub:https://github.com/baiyuliang/Flutter-WanWan
首先,如果从未在MacOS上运行过Flutter应用,当首次安装androidStudio并配置完Flutter环境后,创建FlutterProject并运行在ios模拟器上时,很可能会报错:
CocoaPods not installed...
此时需要安装CocoaPods:
$ sudo gem install cocoapods
但本人在安装时,一直失败:
Failed to build gem native extension...
对本人有效的解决办法:
1.更换homebew源:
$ /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
选择5阿里巴巴源。
2.如提示是否执行,输入Y,确定。
3.如提示输入密码,则输入自己设定的系统密码,确定。
4.更新ruby版本,先替换rvm源:
移除国外源:
$ gem sources --remove https://rubygems.org/
添加国内源:
$ gem sources -a https://gems.ruby-china.com/
安装最新版ruby:
$ rvm install 3.0.2
此时,再次执行cocoapods的安装:
$ sudo gem install cocoapods
此时很快就会安装完毕!
如果我们的Flutter项目是在windows上创建的,并一直运行的安卓环境,当把项目转移至Mac上想编译IOS应用,同样会遇到各种问题,这里的解决办法是,我们在mac上导入Flutter项目后:
删除以上文件,以及IOS文件夹下的build和Pods目录,如果有的话,然后打开pubspec.yaml,执行pub get!
最后打开ios模拟器,并运行项目,flutter会自动编译ios运行环境!
如果提示:
The iOS Simulator deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 8.0, but the range of supported deployment target versions is 9.0 to 14.4.99
则可以打开ios下的Podfile文件,
post_install do |installer|
installer.pods_project.targets.each do |target|
flutter_additional_ios_build_settings(target)
end
end
添加:
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'] = '9.0'
end
end
end
如果提示:
The application's Info.plist does not contain CFBundleVersion.
则打开info.plist将CFBundleVersion版本号改为固定值即可!
以上是关于Flutter打包IOS相关问题记录的主要内容,如果未能解决你的问题,请参考以下文章
Flutter项目打包iOS出现 ITMS-90078 Missing Push Notification Entitlement问题
错误记录Flutter 混合开发获取 BinaryMessenger 报错 ( FlutterActivityAndFragmentDelegate.getFlutterEngine() )(代码片段