我正在iOS应用上设置Firebase崩溃报告。我导入了必要的json文件并设置了shell脚本。但是,当我在模拟器上单击运行时,我得到11个错误,所有人都说同样的事情。以下是其中两个:
warning: dump_syms: /var/folders/5l/20by_c_57fb7jhv3jh72jw9m0000gn/T/com.google.FirebaseCrashReporter.TAlixfZc/**App Name**.dSYM/Contents/Resources/DWARF/**App Name**: in compilation unit '/Users/mikelehen/firebase/firebase-client-objc/Firebase/Firebase/Utilities/FUtilities.m' (offset 0x28a2e): `
warning: dump_syms: /var/folders/5l/20by_c_57fb7jhv3jh72jw9m0000gn/T/com.google.FirebaseCrashReporter.TAlixfZc/**App name**.dSYM/Contents/Resources/DWARF/**App Name**: the DIE at offset 0x28fc1 has a DW_AT_abstract_origin attribute referring to the die at offset 0x2940f, which either was not marked as an inline, or comes later in the file `
当我尝试在iPhone上运行时,我只会遇到四个问题。
另外,我的名字不是mikelehen,其中一个问题出于某种原因。
按照Firebase网站上关于模拟崩溃的说明操作后,我从未收到有关上传崩溃的日志输出。
知道我在这里做错了什么?
编辑: 以下是我的构建阶段中的脚本:
JSON_FILE="../**App Name**/ServiceAccount.json"
GOOGLE_APP_ID=1:**App ID**
defaults write com.google.SymbolUpload version -integer 1
JSON=$(cat "${JSON_FILE}")
/usr/bin/plutil -replace "app_${GOOGLE_APP_ID//:/_}" -json "${JSON}" "$HOME/Library/Preferences/com.google.SymbolUpload.plist"
"${PODS_ROOT}"/FirebaseCrash/upload-sym
答案 0 :(得分:8)
尝试:
Run script only when installing
答案 1 :(得分:3)
这些警告在大多数情况下都无害。 Cocoapod附带的dump_syms
实用程序未完全产品化,因此它使用最后编译它的人的文件名报告错误(在本例中为 mikelehen )。我们正在积极寻找dump_syms
的替代方案,因为警告会分散注意力。
答案 2 :(得分:0)
正如罗伯特所说,这些警告是无害的。如果您在上传时遇到问题,可以采取以下建议:
1)确保在导致崩溃时调试器不连接。它将拦截异常,并且不会报告任何内容。所以编译你的程序,在调试器中点击停止,手动启动应用程序(在模拟器或设备中),触发崩溃,然后重新启动应用程序(没有崩溃,所以错误有时间报告)。
2)您应该看到Firebase崩溃报告已初始化的日志消息。如果缺少此功能,请确保您已包含Firebase /崩溃窗格并调用[FIRApp configure];。
3)在15秒内,您应该看到另一条消息,指示报告已成功发送。一定要等待至少15秒。延迟后上传报告,以避免干扰您的应用启动。
4)报告上传后,在Web控制台中显示数据之前,最多会延迟20分钟。
5)如果您不使用cocoapods,请确保您已在目标公司的构建设置中的其他链接器设置中添加了ObjC链接器标记。
答案 3 :(得分:0)
您可以按照此屏幕截图进行操作。您可以设置崩溃报告。得到结果:设置崩溃报告
答案 4 :(得分:0)
生成的dump_syms警告无害,并在上载符号文件时生成。因此,如果您希望每次构建时都避免出现警告,则可以创建两个目标;调试和发布。 然后只需禁用“安装时仅运行脚本”选项,并启用它以进行发布。 这将上传符号文件。