我使用以下脚本来表示我从用户那里获得的崩溃报告:
/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Plug-ins/iPhoneRemoteDevice.xcodeplugin/Contents/Resources/symbolicatecrash myapp_iPod-Touch.crash myapp.app.dSYM> test.txt
它匹配所有框架调用,但没有我的代码.我怎样才能使我的代码变得更好?请给我一些想法!
正如Craig Hockenberry 指出的那样,用于此目的的dSYM文件必须是编译用户运行的应用程序版本时生成的文件.如果您未保存该文件,则无法在自己的应用程序中解析符号.您不能使用最新版本生成的任何dSYM文件来运行较旧的应用程序提交版本.
更新 在大约2012年的XCode 4中,符号化在XCode Organizer中运行良好,即使 dSYM在其路径中有空间(我认为).
ps让你的dSYM在版本控制之下
更新 自XCode 3.2.5(2010年11月)起,在管理器窗口中的设备日志中完成的符号似乎运行良好.
首先,symbolicatecrash是垃圾*,但在潜入并修复它之前,请确保您的.app包与.dSYM位于同一目录中.
您是否在应用文件名或标识符中有点或短划线?如果是这样,您应该应用Alan Quatermain修复程序.它用于在2.x环境中读取3.0故障转储,但它也可以正确处理应用程序名称和ID中的点和破折号.咄.正则表达很难.
在那之后你将不得不破解perl.尝试./symbolicatecrash -Av mycrash.crash>/dev/null来查看它出错的地方.
对于我的问题,我不得不注释掉quoteMeta($ dsymdir); 和砍($可执行); 线.然后我有一些含糊不清的东西.
这是一个运输产品.欢迎来到未来.
从*SDK 2.2.1开始,谁知道,也许在3.0 GM中,它很强大.它可能发生.