so庫中錯誤資訊檢視

2021-08-23 14:29:09 字數 1449 閱讀 5638

檢視so庫中報錯資訊

libfpcollect.so為自己編譯執行的so檔案,需定位具體的錯誤資訊。

使用ndk中自帶的檔案程式,路徑為android-ndk-r13b\toolchains

[外鏈轉存失敗,源站可能有防盜煉機制,建議將儲存下來直接上傳(img-qbydodmz-1609831295857)(

aarch64-linux-android-4.9:so庫為arm架構 64位

arm-linux-androideabi-4.9:so庫為arm架構 32位

mips64el-linux-android-4.9:so庫為mips架構 64位

mipsel-linux-android-4.9:so庫為mips架構 32位

x86_64-4.9:so庫為x86架構 64位

x86-4.9:so庫為x86架構 32位

根據所生成的so的架構平台不同,選擇不同的架構平台資料夾裡的檔案程式,如我這裡的so檔案架構是arm 32位的,所以選擇arm-linux-androideabi-4.9裡的檔案程式

如何判斷是32位還是64位?

可根據報錯log中pc欄位後的數字個數**「000422e0」**,如為8個,是32位的;如為16個,是64位的。

開啟cmd命令列,輸入命令:aarch64-linux-android-addr2line.exe檔案路徑 -cfape debug的so檔案路徑 0x+錯誤log數字

aarch64-linux-android-addr2line.exe檔案路徑:android-ndk-r13b\toolchains\aarch64-linux-android-4.9\prebuilt\windows-x86_64\bin\aarch64-linux-android-addr2line.exe

-cfape:命令列引數

debug的so檔案路徑:此so檔案需要是編譯的debug型別的檔案,是路徑在obj\local下的檔案

[外鏈轉存失敗,源站可能有防盜煉機制,建議將儲存下來直接上傳(img-u72n1gco-1609831295862)(

編譯出的so庫,在libs下的為release版本

在obj/local下的為debug版本,想看so庫錯誤資訊需使用obj/local下的so檔案

0x+錯誤log數字:錯誤log數字前需加**0x**
結果為:

檢視錯誤資訊

上線之後,可能會出現bug,此時需要檢視後台日誌,這時就遇到了困難.第一,因為檢視日誌,需要找運維,很麻煩 第二 線上日誌很多,很雜,因為多個應用部署在同乙個tomcat上,所以tomcat日誌檔案包含多個專案的檔案,不方便過濾.所以決定以後檢視日誌不依賴運維.怎麼辦呢?把核心介面的錯誤資訊儲存到r...

MySQL錯誤資訊

mysql的出錯 表,根據mysql的標頭檔案mysql include mysqld error.h整理而成。錯誤之處,請大家指正。1005 建立表失敗 1006 建立資料庫失敗 1007 資料庫已存在,建立資料庫失敗 1008 資料庫不存在,刪除資料庫失敗 1009 不能刪除資料庫檔案導致刪除資...

反饋錯誤資訊

即當出現錯誤 時,自動彈出我們預先設計好的反饋視窗,目的是使用者只需簡 單地按一下滑鼠就可以把反饋資訊發到你指定的信箱,當然反饋視窗的內容我們 可以任意修改設計。如下 script function errorinfo errorwin window.open width 20,height 120...