从Apple的崩溃报告收到的内存地址不可读

时间:2011-09-01 14:13:15

标签: ios xcode ios4 crash-reports

我收到了来自apple的我提交的iOS应用程序的崩溃报告,其中包括:

Exception Type:  EXC_BAD_ACCESS (SIGBUS)
Exception Codes: KERN_PROTECTION_FAILURE at 0x00000000
Crashed Thread:  0

Thread 0 name:  Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0   APPNAME                 0x00071fc8 0x6d000 + 20424
1   APPNAME                 0x000733ce 0x6d000 + 25550
2   APPNAME                 0x00072cc0 0x6d000 + 23744
3   Foundation                      0x354cd2ee 0x354bb000 + 74478
.....
14  CoreFoundation                  0x3707bebc 0x37073000 + 36540
15  CoreFoundation                  0x3707bdc4 0x37073000 + 36292
GraphicsServices                0x36835418 0x36831000 + 17432
17  GraphicsServices                0x368354c4 0x36831000 + 17604
18  UIKit                           0x35f25d62 0x35ef7000 + 191842
19  UIKit                           0x35f23800 0x35ef7000 + 182272
20  APPNAME                 0x0006ed46 0x6d000 + 7494
21  APPNAME                 0x0006ed10 0x6d000 + 7440

我一直在看atos命令和dwarfdump。我有.dsym和提交给苹果的.app。但是,我找不到使用apple给出的内存地址(例如0x0006ed46,0x00071fc8等)。我尝试随机化地址,发现我的应用程序地址实际上在0x0002xxx到0x0007xxx

之间

发生什么事了?我怎么知道我的应用程序的哪个部分导致错误?

最诚挚的问候,

1 个答案:

答案 0 :(得分:1)

您需要使用dsym文件来表示崩溃报告。你可以在这里看到答案:

Symbolicating iPhone App Crash Reports