個人一直對Chrome情有獨鐘,Chrome除了更快之外,對開發者的支持更友好。內置強大的Developer Tools,相信Web開發簡直愛不釋手!而且Chrome Store里提供各種各樣的插件,沒有你用不到,只有你想不到?,F在任何事基本Chrome全部辦的到,有時候就在想,如果可以用Chrome調試Android App該多方便,而如今Facebook剛剛開源了一個工具Stetho,從此Chrome調試Android不再是夢。
調試工具
在Android開發中除了一些官方自帶的一些調試工具外,還有兩個工具我認為是必備的。
1.抓包工具
windows平臺最好用的應該是Fiddle,mac上最好用的應該是Charles。這個應該是App開發必備,不管是Android還是iOS。
2.Sqlite查看
這個工具就多了,除了自帶的sqlite3工具之外,還是需要一些GUI方面的工具更方便,就不一一列舉了,大家自行搜索找到自己喜歡的工具就行了,有一些瀏覽器插件,也有一些各個平臺的客戶端。需要知道的是如果想查看App內的sqlite文件需要root。
Stetho
抓包工具雖然好用,但是每次都要在手機設置代理,也挺麻煩的,查看sqlite文件必須要root這點更麻煩。但是有了stetho,這些工具全部自帶了,使用方便,無須root,下面就來看下官方demo介紹的使用用法。
1.首先Gradle進行依賴
然后就可以運行App進行調試,基本上可以滿足調試需求了。
3.Chrome調試
打開Chrome,輸入 chrome://inspect 然后就可以在列表里看到有你的app可以用stetho進行調試的app,facebook官方也提供了一個基本的sample,以下是它的sample提供的調試截圖
基本功能使用
1.檢測網絡狀態
2.查看App本地數據庫并且可以直接執行SQL
查看App本地的SharedPreference文件并可以直接編輯
注意事項
值得注意的是如果你只是簡單的進行配置下,檢測網絡狀態的是沒法查看,有兩種方式:
1.使用OkHttp
這是最簡單的一種方式,要求OkHttp的版本在2.2.x+,只需要添加如下代碼, 這也是目前最簡單的方法
2.使用HttpURLConnection
如果你使用的自己寫的或者其他http library底層是用HttpURLConnection實現的,你需要使用StethoURLConnectionManager來進行集成。然后必須聲明Accept-Encoding: gzip的請求headers。具體用法見facebook stetho源碼的sample。
其中你可能會依賴如下network helpers.
新聞熱點
疑難解答
圖片精選