4

我的应用程序崩溃了,然后我将 iPhone 连接到我的 Mac OS X,在 XCode 的“设备日志”部分中找到了崩溃日志。

我必须做什么才能查看方法或行号?我不知道在哪里查找所提供信息的错误...非常感谢!

Incident Identifier: 3A2C8BCE-1393-4E50-9FEF-9CD5A5E39DD9
CrashReporter Key:   ddc16be00e41688d4e1443e0600a125a6b91dec8
Process:         my_app_info [1962]
Path:            /var/mobile/Applications/A46A8FCB-7350-44B0-94DB-D783144FAB63/my_app_info.app    /my_app_info
Identifier:      my_app_info
Version:         ??? (???)
Code Type:       ARM (Native)
Parent Process:  launchd [1]

Date/Time:       2010-06-16 23:21:30.242 +0200
OS Version:      iPhone OS 3.1.3 (7E18)
Report Version:  104

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

Thread 0 Crashed:
0   libobjc.A.dylib                 0x3138cec0 0x31389000 + 16064
1   libobjc.A.dylib                 0x3138eb84 0x31389000 + 23428
2   my_app_info                     0x0002a012 0x1000 + 167954
3   my_app_info                     0x00029de4 0x1000 + 167396
4   UIKit                           0x32614068 0x324a3000 + 1511528
5   UIKit                           0x326126e0 0x324a3000 + 1504992
6   UIKit                           0x325cbf7c 0x324a3000 + 1216380
7   UIKit                           0x325cbf38 0x324a3000 + 1216312
8   my_app_info                     0x00029d0e 0x1000 + 167182
9   UIKit                           0x325cbf18 0x324a3000 + 1216280
10  Foundation                      0x3372b5d2 0x336de000 + 316882
11  CoreFoundation                  0x323ef50a 0x3239e000 + 333066
12  Foundation                      0x337291ac 0x336de000 + 307628
13  Foundation                      0x3372b512 0x336de000 + 316690
14  UIKit                           0x325cbdb0 0x324a3000 + 1215920
15  UIKit                           0x325cbd48 0x324a3000 + 1215816
16  UIKit                           0x325cbc78 0x324a3000 + 1215608
17  CoreFoundation                  0x323b7eb0 0x3239e000 + 106160
18  CoreFoundation                  0x323adb4a 0x3239e000 + 64330
19  CoreFoundation                  0x323f5524 0x3239e000 + 357668
20  CoreFoundation                  0x323f4c18 0x3239e000 + 355352
21  GraphicsServices                0x335051c0 0x33501000 + 16832
22  UIKit                           0x324a6c28 0x324a3000 + 15400
23  UIKit                           0x324a5228 0x324a3000 + 8744
24  my_app_info                     0x00002332 0x1000 + 4914
25  my_app_info                     0x000022dc 0x1000 + 4828
4

3 回答 3

3

您需要对崩溃日志进行符号化。这将告诉您在您的自定义代码中发生崩溃的位置。

于 2010-06-17T21:42:12.830 回答
1

如果您正在开发此应用程序,请尝试在模拟器中对其进行调试。我发现它比符号化的设备日志产生更完整的崩溃报告(转储到 Apple 控制台)。祝你好运!

于 2011-01-06T19:27:05.713 回答
1

从苹果分析崩溃报告的步骤:

  1. 将推送到应用商店的发布 .app 文件、发布时创建的 .dSYM 文件和从 APPLE 接收的崩溃报告复制到文件夹中。

  2. 打开终端应用程序并转到上面创建的文件夹(使用 CD 命令)

  3. atos -arch armv7 -o ''/'<.dSYM filename here>' 。根据报告,内存位置应该是应用程序崩溃的位置。

例如:atos -arch armv7 -o 'AHLAN!HOT100.app'/'AHLAN!HOT100' 0x0003b508

这将向您显示导致崩溃的确切行、方法名称。

谢谢

于 2011-02-10T09:13:29.360 回答