這裡我們以umeng捕獲的錯誤資訊舉例:
從友盟中, 我們可能會得到如下資訊:
(null)由於這類的崩潰資訊通常難以重現, 沒有任何的重現步驟,所以我們得找到發布該版本時的原始**,可能會需要回朔到以前的svn或者git版本。( 0 corefoundation 0x359348a7 __exceptionpreprocess + 186
1 libobjc.a.dylib 0x37cdb259 objc_exception_throw + 32
2 corefoundation 0x35934789 +[n***ception raise:format:] + 0
3 corefoundation 0x359347ab +[n***ception raise:format:] + 34
4 nxxmovie 0x1153b9
_mh_execute_header + 1131449
5 libsystem_c.dylib 0x32d407e3 _sigtramp + 38
6 nxxmovie 0x390fb
_mh_execute_header + 229627
7 corefoundation 0x358931fb -[nsobject performselector:withobject:] + 42
8 nxxmovie 0x175a5
_mh_execute_header + 91557
9 corefoundation 0x358931fb -[nsobject performselector:withobject:] + 42
10 foundation 0x35457747 __nsthreadperformperform + 350
11 corefoundation 0x35908ad3 __cfrunloop_is_calling_out_to_a_source0_perform_function__ + 14
12 corefoundation 0x3590829f __cfrunloopdosources0 + 214
13 corefoundation 0x35907045 __cfrunlooprun + 652
14 corefoundation 0x3588a4a5 cfrunlooprunspecific + 300
15 corefoundation 0x3588a36d cfrunloopruninmode + 104
16 graphicsservices 0x37526439 gseventrunmodal + 136
18 nxxmovie 0x31b7
_mh_execute_header + 8631
19 nxxmovie 0x3150
_mh_execute_header + 8528
)dsym uuid: ff67f6d3-c71c-3a7d-9c4c-c4ffbf8eeeb9
cpu type: armv7
slide address: 0x00001000
binary image: nxxmovie
base address: 0x000f4000
然後找到當時上傳**時使用的dysm檔案,這檔案通常在.xcarchive檔案中。 右鍵該檔案, 然後通過terminal工具cd到
2。 在xcode中,archive成功後, 會在organizer介面中的archives下, 可以看到所有的archive檔案, 右鍵show in finder可以找到這個檔案。
然後執行atos -arch armv7 -o ***movie 0x1153b9. 就可以看到這處記憶體位址反編譯回來的原始碼行。
可以有效地幫助分析原因。
通過崩潰trace來查詢問題原因
這裡我們以umeng捕獲的錯誤資訊舉例 從友盟中,我們可能會得到如下資訊 null 0 corefoundation 0x359348a7 exceptionpreprocess 186 1 libobjc.a.dylib 0x37cdb259 objc exception throw 32 2 c...
使用ndk stack來查詢崩潰
logcat報錯 fatal signal 6 sigabrt at 0x000025c9 code 6 thread 9703 thread 1277 都是一些暫存器以及函式位址,真不知道怎麼找具體哪個函式出錯了,這個時候使用ndk stack這個工具,ndk stack需要log作為輸入來分析 ...
VS 2005使用map檔案查詢程式崩潰原因
原文 一般程式崩潰可以通過debug,找到程式在那一行 崩潰了,最近編乙個多執行緒的程式,都不知道在那發生錯誤,多執行緒併發,又不好單行除錯,終於找到乙個比較好的方法來找原因,通過生成map檔案,由於2005取消map檔案生成行號資訊 vc6.0下是可以生成行號資訊的,不知道microsoft怎麼想...