我无法在 PROD 的 Firebase/Crashlytics 中表示崩溃
Posted
技术标签:
【中文标题】我无法在 PROD 的 Firebase/Crashlytics 中表示崩溃【英文标题】:I can't symbolicate crash in Firebase/Crashlytics in PROD 【发布时间】:2019-01-16 17:51:34 【问题描述】:使用 Xcode 10.1 (10B61)。 我有一个具有不同目标(PROD、TEST、DEV)的应用程序。即使我们有多个目标,我们也有一个共同的 Info.plist 并且所有构建设置都是相同的
我使用 TestFlight 分发应用程序进行测试。
对于 TEST 环境(在 TestFlight 中),一切正常,Crashlytics 能够直接获取符号,但对于生产环境(AppStore 构建),它报告 缺失的 dSym(具有特定 UUID)
鉴于我没有使用位码(由于特定的蓝牙库),我无法从 iTunesConnect 下载 dSym 文件,因此我必须深入研究 .xcarchive 来获取它。
$ mdfind "com_apple_xcode_dsym_uuids == <UUID>" // shows the right path
$ dwarfdump -u "path.../dSyms/<name>.app.dSym // shows the right UUID
我压缩了文件,但 Crashlytics 说它已正确上传,但似乎无法正常工作...(下班后).. *.app.dSYM 是一个文件夹,因此使用将其重命名为的技巧.zip 不起作用(与从 ITC 下载的一些文件一样)
知道会发生什么吗?
Rgds.... e
【问题讨论】:
【参考方案1】:回答我自己的问题。在与 Firebase 支持团队核实后,解决方案是通过命令行上传 dSym 文件(由于某种原因,网络上传没有按预期工作)。
1 - 使用 UUID 查找 dSym 文件
$ mdfind "com_apple_xcode_dsym_uuids == 029BC62A-AB08-3C50-97D8-E8DFD5E490AA"
2 - 验证检查文件的 UUID
$ dwarfdump -u "path.../dSyms/<name>.app.dSym
3 - 在终端上传符号
$ Pods/Fabric/upload-symbols -gsp "AppName/Resources/Crashlytics plist Files/Prod/GoogleService-Info.plist" -p ios "/Users/userName/Library/Developer/Xcode/Archives/../*.xcarchive/dSYMs/fileName.app.dSYM"
【讨论】:
以上是关于我无法在 PROD 的 Firebase/Crashlytics 中表示崩溃的主要内容,如果未能解决你的问题,请参考以下文章
错误:无法在 --prod 中确定类 OverlayPortal 的模块
在 ng build --prod 期间无法解析验证指令中的所有参数
Ionic 2 : -- prod 文件未编译错误:构建 prod 失败:无法确定类 HomePage 的模块