過去用eclipse跑cocos2d android崩潰了只能出乙個fatal signal訊號,現在有了ndk-stack好了一點點,能定位到哪個函式崩潰了,用法如下
我的cocos2d-x android工程在 d:\works\demo\hellococos\proj.android目錄下,ndk_root (即安裝ndk的路徑)環境變數已經配好,在cmd命令列輸入如下:
adb logcat | %ndk_root%\ndk-stack -sym d:/works/demo/hellococos/proj.android/obj/local/armeabi
或 adb logcat | %ndk_root%\ndk-stack -sym d:/works/demo/hellococos/proj.android/obj/local/armeabi - dump d:/log.txt (log到檔案)
會顯示waiting for device -
這時你可以插入你的手機,或adb connect你的裝置
這時只要你的程式 崩潰,就會顯示出crash資訊,如下
********** crash dump: **********
build fingerprint: 'xiaomi/aries/aries:4.1.1/jro03l/jlb29.0:user/release-keys'
pid: 6546, tid: 6575, name: thread-9654 >>> com.cocos2dx.sango <<<
signal 11 (sigsegv), code 1 (segv_maperr), fault addr deadbaad
stack frame #00 pc 00013a78 /system/lib/libc.so
stack frame #01 pc 00015e55 /system/lib/libc.so (dlfree+1628)
stack frame #02 pc 00017003 /system/lib/libc.so (free+10)
使用ndk stack來查詢崩潰
logcat報錯 fatal signal 6 sigabrt at 0x000025c9 code 6 thread 9703 thread 1277 都是一些暫存器以及函式位址,真不知道怎麼找具體哪個函式出錯了,這個時候使用ndk stack這個工具,ndk stack需要log作為輸入來分析 ...
pythonpip使用方法 pip使用方法整理
匯出專案已安裝的pip包 pip list 檢視專案中安裝的包 pip freeze requirements.txt 將專案中所用到的第三方庫輸出到requirements.txt中 pip install 版本號 pip install i 本次使用清華源進行安裝 離線安裝第三方庫 一鍵安裝整個...
使用ndk stack定位so庫crash位置
ndk stack 工具讓您可以在堆疊追蹤出現在 adb logcat 的輸出中時過濾它們。它還可以從源 將共享庫中的任意位址替換為對應的 source file line number 值,從而更容易找出問題所在。例如,它可將下面的crash log i debug 31 i debug 31 b...