2011-12-19 101 views
2

我已經搜索並找到了一些關於此主題的StackOverflow Q/A,但我仍然無法讓我的iOS MonoTouch應用程序的崩潰日誌符號化。下面是我的環境信息:不能Symbolicate Monotouch iOS應用程序崩潰日誌

MonoDevelop 2.8.5 
Runtime: 
Mono 2.10.6 (tarball Fri Sep 16 00:13:06 EDT 2011) 
GTK 2.24.5 
GTK# (2.12.0.0) 
Apple Developer Tools: 
Xcode 4.2 (828) 
Build 4D199 
Monotouch: 5.0.4 
Operating System: 
Mac OS X 10.7.2 ` 

當然,當我構建應用程序在MonoDevelop中,我有它設置爲Debug | iPhone配置使調試併發出調試符號。我可以驗證dsym文件也正在生成。

編輯 - 另一個可能相關的信息。 Xcode Organizer告訴我它無法找到與我的手機版本(5.0.1 - 9A405)相匹配的軟件映像。 Organizer Screenshot

當我在(iPhone 4S)中插入設備時,日誌會被導入,並且管理器窗口報告它是符號化日誌。但是,我只能在日誌中找到位置和偏移量:

Application Specific Information: 
IMDSSMobile_iOS[22522] has active assertions beyond permitted time: 
{(
    <SBProcessAssertion: 0x11c36880> identifier: Suspending process: IMDSSMobile_iOS[22522] permittedBackgroundDuration: 10.000000 reason: suspend owner pid:15 preventSuspend preventThrottleDownCPU preventThrottleDownUI 
)} 

Elapsed total CPU time (seconds): 2.410 (user 2.410, system 0.000), 12% CPU 
Elapsed application CPU time (seconds): 0.003, 0% CPU 

Thread 0 name: Dispatch queue: com.apple.main-thread 
Thread 0: 
0 libsystem_kernel.dylib   0x339da0d8 0x339c9000 + 69848 
1 libsystem_c.dylib    0x3655bc44 0x36559000 + 11332 
2 IMDSSMobile_iOS     0x005b8f60 0x1000 + 5996384 
3 IMDSSMobile_iOS     0x00544208 0x1000 + 5517832 
4 IMDSSMobile_iOS     0x00545c24 0x1000 + 5524516 
5 IMDSSMobile_iOS     0x005b31bc 0x1000 + 5972412 
6 IMDSSMobile_iOS     0x0054e248 0x1000 + 5558856 
7 IMDSSMobile_iOS     0x0054c178 0x1000 + 5550456 
8 IMDSSMobile_iOS     0x0054d4bc 0x1000 + 5555388 
9 IMDSSMobile_iOS     0x00560620 0x1000 + 5633568 
10 IMDSSMobile_iOS     0x0057a88c 0x1000 + 5740684 
11 libsystem_c.dylib    0x365b1532 0x36559000 + 361778 
12 libsystem_c.dylib    0x3655bc44 0x36559000 + 11332 
13 IMDSSMobile_iOS     0x0063d654 0x1000 + 6538836 
14 IMDSSMobile_iOS     0x0063f224 0x1000 + 6545956 
15 IMDSSMobile_iOS     0x005c6b30 0x1000 + 6052656 
16 IMDSSMobile_iOS     0x002ef91c 0x1000 + 3074332 
17 IMDSSMobile_iOS     0x002eca04 0x1000 + 3062276 
18 IMDSSMobile_iOS     0x002e7780 0x1000 + 3041152 
19 IMDSSMobile_iOS     0x002e76e8 0x1000 + 3041000 
20 IMDSSMobile_iOS     0x002d7f24 0x1000 + 2977572 
21 IMDSSMobile_iOS     0x002d7cbc 0x1000 + 2976956 
22 IMDSSMobile_iOS     0x0036c220 0x1000 + 3584544 
23 IMDSSMobile_iOS     0x0036c104 0x1000 + 3584260 
24 IMDSSMobile_iOS     0x0042dec4 0x1000 + 4378308 
25 IMDSSMobile_iOS     0x0042d88c 0x1000 + 4376716 
26 IMDSSMobile_iOS     0x004305b8 0x1000 + 4388280 
27 IMDSSMobile_iOS     0x0045af54 0x1000 + 4562772 
28 IMDSSMobile_iOS     0x006c0e54 0x1000 + 7077460 
29 Foundation      0x31fff2f2 0x31fd6000 + 168690 
30 Foundation      0x31ffee2c 0x31fd6000 + 167468 
31 Foundation      0x31fd8f12 0x31fd6000 + 12050 
32 CoreFoundation     0x3809f7fc 0x38087000 + 100348 
33 CoreFoundation     0x380a048a 0x38087000 + 103562 
34 UIKit       0x3576c4b8 0x354f5000 + 2585784 
35 UIKit       0x356dc9c4 0x354f5000 + 1997252 
36 UIKit       0x355bbe9a 0x354f5000 + 814746 
37 UIKit       0x35531784 0x354f5000 + 247684 
38 UIKit       0x355923b2 0x354f5000 + 644018 
39 UIKit       0x35592350 0x354f5000 + 643920 
40 UIKit       0x35591c8a 0x354f5000 + 642186 
41 UIKit       0x355919be 0x354f5000 + 641470 
42 UIKit       0x3558eb30 0x354f5000 + 629552 
43 IMDSSMobile_iOS     0x00456b38 0x1000 + 4545336 
44 IMDSSMobile_iOS     0x0001927c 0x1000 + 98940 
45 IMDSSMobile_iOS     0x003856b8 0x1000 + 3688120 
46 IMDSSMobile_iOS     0x005361a4 0x1000 + 5460388 
47 IMDSSMobile_iOS     0x0062e4b0 0x1000 + 6476976 
48 IMDSSMobile_iOS     0x006c19e0 0x1000 + 7080416 
49 UIKit       0x355ab55e 0x354f5000 + 746846 
50 UIKit       0x35623ce0 0x354f5000 + 1240288 
51 Foundation      0x3207193c 0x31fd6000 + 637244 
52 CoreFoundation     0x38114a5c 0x38087000 + 580188 
53 CoreFoundation     0x381146c2 0x38087000 + 579266 
54 CoreFoundation     0x38113298 0x38087000 + 574104 
55 CoreFoundation     0x380964d6 0x38087000 + 62678 
56 CoreFoundation     0x3809639e 0x38087000 + 62366 
57 GraphicsServices    0x37c14fc6 0x37c11000 + 16326 
58 UIKit       0x3552673c 0x354f5000 + 202556 
59 IMDSSMobile_iOS     0x0045aaa8 0x1000 + 4561576 
60 IMDSSMobile_iOS     0x00002d38 0x1000 + 7480 
61 IMDSSMobile_iOS     0x003856b8 0x1000 + 3688120 
62 IMDSSMobile_iOS     0x005361a4 0x1000 + 5460388 
63 IMDSSMobile_iOS     0x0062e4b0 0x1000 + 6476976 
64 IMDSSMobile_iOS     0x006315d8 0x1000 + 6489560 
65 IMDSSMobile_iOS     0x006305d8 0x1000 + 6485464 
66 IMDSSMobile_iOS     0x0053d254 0x1000 + 5489236 
67 IMDSSMobile_iOS     0x005305c0 0x1000 + 5436864 
68 IMDSSMobile_iOS     0x00002bc0 0x1000 + 7104 

任何人都有其他指針嗎?我對崩潰發生的時間有一個大致的瞭解,並且我意識到這個錯誤(超出允許時間的斷言)通常涉及在主線程上阻塞網絡IO,但我沒有這樣做,我也不知道是什麼否則可能會繼續。從日誌中查看有效的堆棧跟蹤可能會非常有幫助。

+0

墜毀如果你建立和上傳和運行你的應用程序,它崩潰,然後重新在MonoDevelop的項目必須在MonoDevelop中(即最後構建應用程序,崩潰日誌不能象徵性的) – 2011-12-20 00:08:48

+0

羅爾夫 - 我確實相信是這樣。我會構建,上傳,運行和崩潰,然後嘗試查看報告。 – pseabury 2011-12-20 13:13:01

+0

您應該嘗試運行「symbolicatecrash -v path/to/log.crash path/to/app.DSYM」並查看是否打印了任何錯誤(或將詳細輸出放在此處以便其他人可以診斷) – 2011-12-21 11:18:46

回答

2

符號化與MT或其他用於生成本機iOS應用程序圖像的技術無關。

系統試圖表示outbput,但是這是通過從dSYM文件加載數據完成的,您需要確保將dSYM文件與崩潰日誌放在同一目錄中,或者使用顯式路徑手動執行到dSYM。

希望這會有所幫助。

-Pavel

+0

我複製了崩潰日誌和dsym文件到一個公共目錄,然後將日誌導入Organizer並獲得良好結果。謝謝帕維爾。 – pseabury 2011-12-28 18:45:24