Flutter应用iOS端编译失败:UIApplication不兼容Launcher协议
解决方案:UIApplication不兼容Launcher协议导致iOS编译失败
这个错误源于url_launcher_ios 6.3.0版本与新版Xcode/iOS SDK的API签名不匹配(核心差异是@MainActor和Sendable修饰符的定义冲突),以下是可执行的解决步骤:
升级url_launcher到兼容版本
编辑项目根目录的pubspec.yaml,将url_launcher的版本更新至6.3.1及以上(该版本已修复协议兼容问题),然后执行:flutter pub get也可直接通过命令升级:
flutter pub upgrade url_launcher重新清理并安装iOS依赖
- 进入iOS项目目录:
cd ios - 移除现有Pods:
pod deintegrate - 重新安装Pods:
pod install - 返回项目根目录,清理并重新构建:
cd .. flutter clean flutter run
- 进入iOS项目目录:
校验Flutter与Xcode版本兼容性
- 确保Flutter为最新稳定版:
flutter upgrade - 确认Xcode版本符合Flutter支持要求(例如Flutter 3.16及以上适配Xcode 15),若Xcode版本过旧,建议更新至最新稳定版。
- 确保Flutter为最新稳定版:
内容的提问来源于stack exchange,提问作者Krishna prasad
相关产品推荐
相关产品推荐

