原作者:袁飛翔
一、參考資料
Google官方文檔:https://developers.google.com/web/tools/chrome-devtools/debug/remote-debugging/remote-debugging
二、普通h5頁面手機端調試
此種方式最簡單,在安卓手機中安裝安卓版 chrome,USB 連接 PC,然後在 PC 的 chrome 瀏覽器中打開 chrome://inspect 即可。
三、基於webkit核心的webview端調試
從 Android 4.4 開始,webkit是支持遠程調試的,不過需要將app的debug模式打開,可以使用如下代碼:
WebView.setWebContentsDebuggingEnabled(true);
由於大部分 App 的 debug 模式是關閉的,即便是內部 App,比如 QQ/微信,要去找一個開啓了debug 模式的版本還是比較麻煩的。因此需要使用藉助第三方工具來強制開啓任何 App 的 Android webview debug模式,使之可以使用 chrome inspect。而這個工具就是 Xposed 。
我們已經提供了一份要安裝的文件,請首先到 https://github.com/feix760/WebViewDebugHook 下載文件。
1、root設備
因爲涉及到 root 權限,因此需要將手機進行 root。有很多工具可以來 root,比如KingRoot、一鍵root、360一鍵root等。如果你安裝了QQ電腦管家,可以在“電腦管家-工具箱-其他”列表裏面看到KingRoot。
2、安裝xposed框架
在下載文件的hook.zip中,找到 de.robv.android.xposed.installer_v33_36570c.apk,安裝之。也可以去 官網 下載。
3、安裝xposed webview debugging模塊
在下載文件的hook.zip中,找到 WebViewDebugHook.apk,安裝之。
4、激活Xposed
安裝後上述兩個apk之後,可以看到手機上面出現了一個叫 Xposed Installer 的圖標,點擊進去之後會看到提示說Xposed未激活,點擊紅色字體部分,會切換到另外一條頁面,點擊“安裝/更新”按鈕即可。
但有部分手機會出現類似如下的錯誤,導致無法點擊“安裝/更新”,目前已知的是部分版本的MIUI是會出現這個問題的。
安裝完成之後,重啓再打開,再點擊剛纔點擊過的地方,切入頁面之後,勾選,再重啓,重啓之後即激活了Xposed。
5、關於QQ等
QQ等默認會使用X5內核,把下載文件中的 debug.conf 放在sd卡根目錄下就可以強制它使用 Android 自帶 webview 。
6、測試
手機usb連接電腦,使用 chrome 打開 chrome://inspect ,然後打開任意 App 的 webview ,接下來就是見證奇蹟的時候了。