wat*_*tts 11 ios flutter codemagic
我正在尝试使用 Flutter 为 iOS 和 Android 构建一个简单的应用程序,但是当我尝试在 iPhone 上运行它时应用程序在启动时崩溃(Android 运行良好)。我没有 mac,所以我使用 Codemagic 编译发布版本并部署到 TestFlight,然后从那里安装在 iPhone 上。据我所知,Apple 只在 Xcode 中显示他们的崩溃日志(App Store Connect 在线没有任何内容?),而且由于我没有 Mac,我看不到这些。关于我可能会遇到的任何想法,或者我可以收集哪些信息来调试问题?
谢谢!
编辑:我一直在挖掘更多,看起来崩溃与 Firebase 依赖项有关。如果我创建 Flutter 演示项目 (flutter create),它在 iOS 上运行良好。但是,如果我随后将 Firebase 包添加到 pubspec.yaml,并手动添加 GoogleServices-info.plist,应用程序会在启动时崩溃。(我还没有添加任何使用 Firebase 的代码。)GoogleServices-info.plist 应该与 Xcode 一起添加,但由于我没有 Xcode 或 mac,所以这很困难。这个问题的第二个答案给出了一个建议:Where to save GoogleService-Info.plist in Flutter without Xcode? 我尝试进行这些更改,但得到了相同的结果。有人对在没有 Mac 的情况下添加 Firebase 有什么建议吗?
wat*_*tts 13
好的,这就是发生的事情。最初该应用程序在 iOS 上崩溃是因为 GoogleServices-info.plist 文件(可能)存在问题。没有错误消息,所以我不知道在哪里看。我终于回到了简单的演示应用程序并开始重新分层以隔离问题。演示应用程序可以在 iOS 上构建和运行没有问题,但是当我添加 Firebase 依赖项(作为一个组)时,它失败了。我手动添加了 GoogleServices-info.plist 文件(在 Xcode 之外)并使用文本编辑器调整了 ios/Runner.xcodeproj/project.pbxproj 中的引用,但这并没有奏效。
在这一点上,我终于崩溃了,得到了一台 MacBook。在 Mac 上调试,我现在可以看到应用程序在模拟器上的调试模式下以及在设备上的发布模式下崩溃,但仍然没有有用的错误消息。我使用 Xcode 添加了 GoogleServices-info.plist 文件,所以至少那部分是正确的,但应用程序仍然立即崩溃。查阅文档后,我意识到在制作示例应用程序时,我忘记在 AdMob 的 info.plist 文件中添加应用程序 ID。此时只是 AdMob 导致崩溃,而不是其他 Firebase 依赖项。我把它加回来,一切都运行良好。我希望我一个月前看过那个。啊。
感谢@Mikhail Tokharev 和@season 对这样一个模糊的问题进行了尝试。我希望我一开始有更多的细节可以分享,但我还不够了解,不知道可能出了什么问题。
TL; 博士
小智 5
自从过去几天以来我一直面临这个错误,今天我碰巧解决了它。因此,我想与将 iOS 应用程序连接到 firebase 后遇到启动错误的任何人分享。
我在使用 firebase 设置新的 iOS 应用程序时遵循了所有步骤,在我的例子中,这正是导致错误的原因。如果您已将 import 'Firebase' and 放入Firebase.configure()您的 中AppDelegate.swift,请将其删除并再次运行您的应用。我删除了这两行,效果很好。使用 Cloud Firestore 进行测试(只需让一个按钮向您的 Cloud Firestore 写入一些内容),并确保await Firebase.initializeApp();在按下按钮时也添加内容。
我完成了所有这些步骤,并且对我来说效果很好。
PS 我是在 Mac 上用 android studio 做的。
| 归档时间: |
|
| 查看次数: |
8010 次 |
| 最近记录: |