我已将 crashlytics 集成到使用 ixguard 作为混淆工具的应用程序中。在非模糊版本上使用模拟器进行建议的测试效果很好。
要正确地对混淆的应用程序崩溃日志进行去符号化,需要不同的 dSYM 文件。这个新的 dSYM 由混淆工具提供,我使用 firebase 门户上传它。
在 firebase 控制台中,我可以看到一些通过使应用程序崩溃而生成的崩溃日志,但它们仍然需要正确的 dSYM(必需)。好像没有考虑新的dSYM。
通过运行 dwarfdump -u Obfuscated.BS.dSYM ,我可以清楚地看到所需的 UUID 出现在列表中,因此它们应该匹配。
我担心的是,在构建时 Fabric 运行一个脚本,该脚本应该在 Fabric 门户上自动上传 dSYM,我想知道这种双重上传是否会破坏某些内容。
最佳答案
我想我已经发现了这个问题,这可能是由于 iXguard 生成的 dSYM 造成的,因为它的结构与 Xcode 生成的结构不同。 在存档的 dSYM 文件夹中,您会发现类似的内容:
dSYM
|
|->ThirdPartyLib1.dSYM
|->ThirdPartyLib2.dSYM
|->MyApp.dSYM
|->ThirdPartyLib3.dSYM
MyApp.dSYM 的结构如下
MyApp.dSYM
|
|->Contents
|
|->Info.plist
|->Resources
|
|->DWARF
|
|->MyApp
来自 iXguard 的有点困惑:
MyApp.dSYM
|
|->Contents
|
|->Info.plist
|->Resources
|
|->DWARF
|
|->MyApp
|->ThirdPartyLib1
|->ThirdPartyLib2
|->ThirdPartyLib3
如果我上传 iXguard 文件,Crashlytics 不会将其识别为有效,如果我修改它并保持其原始结构,它就可以工作。
问题已解决。
我希望这可以帮助将来的人。
关于ios - Crashlytics 为混淆的应用程序手动上传 dSYM,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52187750/