我的 Flutter 应用程序在 iOS 16 设备上运行时遇到问题。
当我最初从 Xcode 启动该应用程序时,该应用程序运行良好,并且当我热重新加载它时,它也可以正常运行。
但是,如果我关闭设备上的应用程序并尝试重新打开它,它就会崩溃。
我目前正在使用
flutter_facebook_auth: ^6.0.1
。此问题不会出现在其他设备、模拟器或 Android 上 - 它是 iOS 16 特有的。
为了诊断问题,我根据文档正确执行了所有设置步骤,包括使用适当的 Facebook 配置正确设置
Info.plist
。
我怀疑问题是在注册 Facebook Auth 插件期间发生的,如指向
SwiftFlutterFacebookAuthPlugin.register(with:)
的崩溃日志所示。
有人遇到过类似的问题或对如何解决这个问题有任何见解吗?任何帮助将不胜感激。
以下是设备崩溃时的输出日志:
__TEXT 100eb8000-1011d4000 [3184K] r-x/r-x SM=COW ...er.app/Runner 终止原因:信号 11 分段错误:11 终止进程:exc 处理程序 [3399]
线程触发:0
线程0名称:调度队列:com.apple.main-thread 线程 0 崩溃: 0 libswiftCore.dylib 0x1b2527a6c swift_getObjectType + 36 1 flutter_facebook_auth 0x101a663a0 静态 SwiftFlutterFacebookAuthPlugin.register(with:) + 132 2 flutter_facebook_auth 0x101a665bc @objc 静态 SwiftFlutterFacebookAuthPlugin.register(with:) + 56 3 flutter_facebook_auth 0x101a602d8 +[FlutterFacebookAuthPlugin registerWithRegistrar:] + 72
我尝试了 flutter clean、pod update、重启设备。 预计启动应用程序不会崩溃。
经过研究,我偶然发现一条注释,提到从 iOS 14 开始,从主屏幕以调试模式启动应用程序可能会导致崩溃。
基于此,我尝试在 iOS 16 设备上以发布模式部署我的应用程序,幸运的是,在发布模式下没有发生错误。
对于任何面临类似问题的人来说,一个潜在的解决方案是在发布模式下测试和部署您的应用程序以避免这种崩溃。
我希望这可以帮助其他面临同样问题的人。