我最近启用了 BugSense在我的应用程序中尝试帮助收集崩溃报告。我看到很多看起来像是在我的应用程序启动后立即发生的崩溃(我无法在我自己的任何设备上复制)。问题是我从 BugSense 获得的堆栈跟踪使它看起来我的应用程序实际上没有做任何导致崩溃的事情。我所看到的只是在跟踪中启动 AppDelegate 的第一个主调用,然后是一堆不能很好地表示符号的库。
我意识到这可能不足以找出我的崩溃,但也许我可以得到帮助以指明正确的方向。我无法在我自己的设备(以及其他几个人的设备)上进行复制,并且 BugSense 的堆栈跟踪来自已发布的应用程序。
这是 BugSense 给我的堆栈跟踪。
libsystem_kernel.dylib 0x3089232c __pthread_kill 70444
libsystem_c.dylib 0x37d2cfeb abort 290795
libc abi.dylib 0x3078ef6b abort_message 28523
libc abi.dylib 0x3078c34d _ZL17default_terminatev 17229
libobjc.A.dylib 0x37d7d2e3 _objc_terminate 37603
libc abi.dylib 0x3078c3c5 _ZL19safe_handler_callerPFvvE 17349
libc abi.dylib 0x3078c451 _ZdlPv 17489
libc abi.dylib 0x3078d825 __cxa_current_exception_type 22565
libobjc.A.dylib 0x37d7d235 objc_exception_rethrow 37429
CoreFoundation 0x38187545 CFRunLoopRunSpecific 62789
CoreFoundation 0x381873a5 CFRunLoopRunInMode 62373
GraphicsServices 0x37f5efcd GSEventRunModal 16333
UIKit 0x31d07743 UIApplicationMain 202563
AppNameHD 0x000039af 0x1000 10671
我正在使用来自 Atos cannot get symbols from dSYM of archived application 的说明, 象征。它适用于其他堆栈跟踪,在这些跟踪中我实际上看到了导致问题的一些代码,但并没有真正为我提供上述跟踪的任何信息。
该崩溃报告不会有太大帮助,您需要最后一个异常回溯来查看您的代码的哪些部分导致了崩溃。正如您在堆栈跟踪中看到的那样,异常被重新抛出,所以发生在另一个运行循环中。
BugSense 崩溃报告也基于的更新版本的 PLCrashReporter 提供了这一点。 http://code.google.com/p/plcrashreporter/
旁注:服务HockeyApp.net在其开源 SDK (QuincyKit.net) 中使用最新版本的 PLCrashReporter,在服务器上提供最后的异常回溯和符号化。 (我是两者的成员)
关于应用程序启动崩溃的 iOS BugSense 堆栈跟踪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8347789/
欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://ogeek.cn/) | Powered by Discuz! X3.4 |