xcode 4.5的符号崩溃失败
我只是升级了我的xcode到4.5版本,我尝试了三种符号化崩溃日志的方法,但都没有成功。
首先,我从我的设备获取了崩溃日志,然后将其导入到Organizer的“设备日志”中,但是我的应用的确切function无法显示,存储地址仍显示在结果中。
其次,我把'/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/PrivateFrameworks/DTDeviceKit.framework/Versions/A/Resources'中的'symbolicatecrash'文件复制到'/ usr / local / bin“,并将.DSYM文件,.app文件和.crash文件放入一个文件夹,运行命令:'symbolicatecrash Myapp.crash',结果仍显示内存地址。
最后,我尝试了http://xperienced.com.pl/blog/symbolicate-ios-crash-report方法,但还是没有幸运。
你能否帮我解决这个问题?
提前致谢!
我根据https://github.com/TheRealKerni/QuincyKit/issues/46中的讨论解决了这个问题。 并从https://github.com/TheRealKerni/QuincyKit/blob/3c4a0b163ac71599a7795508fe6a91c1ced9daa6/server/local/symbolicatecrash.pl运行perl脚本以获得正确的结果。
@Kerni,谢谢你的脚本!
如果您的应用程序名称中包含国际字符(例如“ø”,“ô”,“ç”),则表示符号将失败。 符号化过程中的各个步骤会弄乱这些字符,导致无效的符号化path。
你关掉了聚光灯吗? symboliccrash使用聚光灯来查找二进制文件和dsym文件,所以如果你已经closures聚光灯,那么它将无法find它们。 无论如何,这里是如何将一个hex堆栈跟踪地址转换为行号:
[1]find.dSym文件,进入XCode-> Organizer,点击存档,然后右键点击存档,然后进入这个目录(你可以将文件夹拖到shell窗口中)。
cd进入dSYMs目录。
[3]运行dwarfdump命令将hex地址转换为代码中的行号:
dwarfdump --arch armv7 myApp.dSYM --lookup 0xaabbccdd | grep 'Line table'
我已经安装了Xcode 4.5和4.4.1,在删除4.4.1之后,符号化问题得到修复。
如果您还没有尝试过,请将您的Mac升级到OSX 10.8.2。 我正在运行OSX 10.7.5,并立即升级固定我的sybolication困境。
我已经尝试了几乎所有的东西来让我的崩溃日志符号化。 我以前从来没有遇到过任何问题,但是我看了一个崩溃日志已经有几个月了, 在那段时间,我升级到了Xcode 4.5.2。 在我看来,在运行OSX 10.7.5的Mac上,Xcode 4.5.2 symbolicscrash perl脚本无法正常工作。 在symboliccrash中,它调用atos来注册一个地址; 它找不到匹配的符号,即使我知道我有一个正确的xcarchive的事实。 无论如何,如果你能够承受20美元,OSX 10.8.2的spring,希望这会为你工作。