Android神兵利器 | ChkBugReport輸出網頁版錯誤報告

-- 作者 謝恩銘 轉載請注明出處

內容簡介


  1. 前言
  2. 難讀的 BugReport
  3. ChkBugReport來拯救你
  4. 寫一個 Shell 快捷方式
  5. 總結

1. 前言


從事 Android(嵌入式)開發,也許常要和 BugReport 打交道。

BugReport 是由 Bug 和 Report 這兩個英語單詞組成。bug 是英語「瑕疵,錯誤」的意思,在計算機領域專指程序中的問題。report 是英語「報告」的意思。

顧名思義,BugReport 就是「錯誤報告」的意思。不過,真實的 BugReport 不僅僅記錄錯誤,不同級別的日志也會記錄下來,方便我們 debug。

一般來說 Android 的 BugReport 是 .txt 結尾的文本文件,比如我們公司的 Android app 里的 BugReport 就是命名為 bugreport.txt。當然了,命名沒有限定。

Google 的 Android 主頁上有專頁論述如何閱讀 BugReport :https://source.android.com/source/read-bug-reports

上面的頁面推薦好好閱讀下,對你排查 Android 的問題很有幫助。

2. 難讀的 BugReport


Android 的 BugReport 里面包含了 dumpsys,dumpstate,logcat 命令輸出的結果。內容一般來說會很多。

要生成一個 BugReport,我們可以運行以下命令:

adb bugreport > bugreport.txt

一般的 BugReport 是這樣的:

這樣的:

是不是覺得很難閱讀呢?有點望而卻步的感覺。

3. ChkBugReport來拯救你


幸好,我們有一個免費開源的小軟件來拯救你。

這個軟件是索尼(Sony)公司開發的,開源在 Github 上:https://github.com/sonyxperiadev/ChkBugReport

這個軟件名叫 ChkBugReport。Chk 是 check 的縮寫,表示「檢查」。

ChkBugReport 并沒有什么安裝程序或腳本,只有一個 JAR 包供下載。

軟件下載鏈接:https://github.com/sonyxperiadev/ChkBugReport/downloads

我們下載最新版,下載下來是這樣一個文件:

要用它來解析 BugReport 文件并生成網頁版報告,需要用 java 命令(請先安裝和配置 Java 開發環境,網上有很多圖文教程,就不贅述了):

java -jar $HOME/chkbugreport.jar $HOME/bugreport.txt

$HOME 是一個環境變量,指示了你的家目錄的路徑。

ChkBugReport 會為你生成一個文件夾,叫做 bugreport_out,文件夾里有個 index.html 文件,這就是我們的錯誤報告的網頁了,是一個 HTML 文件。

你可以雙擊啟動它 (如果你設置了 .html 文件用瀏覽器程序啟動的話), 或者用命令行,比如我用 firefox 瀏覽器來啟動這個 HTML 文件:

firefox bugreport_out/index.html

打開后的網頁如下所示,有很多欄目:

可以查看每一個欄目,比如查看 System log 中的 log :

4. 寫一個 Shell 快捷方式


難道每次我們啟動 ChkBugReport 都要附上那個 JAR 包的路徑嗎?豈不是太麻煩。

沒關系,我們可以寫一個 Shell 腳本來作為快捷啟動方式。

首先我們把 chkbugreport-0.4-185.jar 改名為 chkbugreport.jar,并把它放到 $HOME/bin 目錄中:

mv $HOME/chkbugreport-0.4-185.jar $HOME/bin/chkbugreport.jar

然后創建一個 Shell 腳本,起名叫 chkbugreport 好了,也放在 $HOME/bin 目錄中 :

vim $HOME/bin/chkbugreport

在腳本中加入以下代碼:

#!/bin/sh

DIR=$HOME/bin
JAR=$DIR/chkbugreport.jar
CP=$JAR

if [ ! -f $JAR]; then
    echo "為了這個腳本能夠運行,請把下載的 ChkBugReport 的 JAR 包拷貝到 $JAR 中"
    exit 1
fi

java -jar $CP "$@"

為腳本添加可執行權限:

chmod +x $HOME/bin/chkbugreport

確保 $HOME/bin 這個目錄在 Path 環境變量中,請參看 Linux探索之旅 | 第五部分第二課:一入Shell深似海,酷炫外殼惹人愛

之后,你就可以在隨便哪個目錄中運行

chkbugreport bugreport.txt

來生成錯誤報告的網頁版了。

5. 總結


  1. Android 因其開源特性,相比 iOS 可以應用在更多領域,比如 嵌入式。

  2. 網上有不少 Android 開發有用的開源工具,Github 上更是一搜一大堆。善于使用工具,必將事半功倍。

  3. ChkBugReport 可以基于 Android 的 BugReport 為我們輸出易讀的網頁版錯誤報告,是 HTML 格式的,可以用瀏覽器打開。


我是謝恩銘,在巴黎奮斗的軟件工程師。
熱愛生活,喜歡游泳,略懂烹飪。
人生格言:「向著標桿直跑」

本文已在版權印備案,如需轉載請訪問版權印28280318

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 227,882評論 6 531
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,208評論 3 414
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 175,746評論 0 373
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,666評論 1 309
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,477評論 6 407
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 54,960評論 1 321
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,047評論 3 440
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,200評論 0 288
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 48,726評論 1 333
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,617評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,807評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,327評論 5 358
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,049評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,425評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,674評論 1 281
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,432評論 3 390
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,769評論 2 372

推薦閱讀更多精彩內容