Flutter iOS运行出现白屏且抛出NSInternalInconsistencyException如何解决?
问题原因
报错
FLTWakelockApi api doesn't respond to @selector(toggleMsg:error:)是Flutter的wakelock(屏幕常亮)插件版本和当前Flutter SDK、iOS编译环境不兼容导致的原生方法调用失败,直接触发应用闪退白屏。
解决方案
按以下步骤操作即可修复:
- 第一步:适配wakelock插件版本
打开项目根目录的pubspec.yaml,找到wakelock依赖项:- 如果你使用的是Flutter 3.x以上版本,直接升级到wakelock最新稳定版
- 如果你使用的是Flutter 2.x版本,指定固定兼容版本:
wakelock: 0.6.2
修改后执行命令:flutter clean && flutter pub get
- 第二步:重置iOS端依赖
进入项目ios目录执行以下命令:rm -rf Podfile.lock Pods pod deintegrate pod install - 第三步:可选兼容方案
如果你项目不需要屏幕常亮功能,直接删除pubspec.yaml中的wakelock依赖,以及项目中所有调用wakelock的代码,重新编译即可解决问题。
所有操作完成后,完全关闭Xcode和模拟器,重新打开项目编译运行即可。
内容的提问来源于stack exchange,提问作者Erald
相关产品推荐
相关产品推荐

