您可以使用 console
JavaScript API 對 JavaScript 偵錯,以及查看
輸出訊息。如果您熟悉
Firebug 或 Web Inspector 連結後,相信您很熟悉 console
的使用方式
(例如 console.log()
)。Android 的 WebKit 架構支援
API,以便在您偵錯時從網頁接收記錄。
WebView
。本主題將說明如何使用
以便使用控制台 API 進行偵錯
在 WebView 中使用主控台 API
在 WebView
中偵錯時,也支援 Console API。您必須
提供
導入 WebChromeClient
這個
onConsoleMessage()
。
這個方法。接著,套用
透過以下方式將 WebChromeClient
到您的「WebView
」:
setWebChromeClient()
。
詳情請參閱 Webview
說明文件。
以下範例說明如何在 WebView
中使用主控台 API:
Kotlin
val myWebView: WebView = findViewById(R.id.webview) myWebView.webChromeClient = object : WebChromeClient() { override fun onConsoleMessage(message: ConsoleMessage): Boolean { Log.d("MyApplication", "${message.message()} -- From line " + "${message.lineNumber()} of ${message.sourceId()}") return true } }
Java
WebView myWebView = findViewById(R.id.webview); myWebView.setWebChromeClient(new WebChromeClient() { @Override public boolean onConsoleMessage(ConsoleMessage consoleMessage) { Log.d("MyApplication", consoleMessage.message() + " -- From line " + consoleMessage.lineNumber() + " of " + consoleMessage.sourceId()); return true; } });
ConsoleMessage
還包含
MessageLevel
物件
,指出目前傳送的控制台訊息類型。您可以查詢
訊息層級搭配
messageLevel()
到
判斷訊息嚴重性
Log
方法或採取其他適當行動。
您是否使用
onConsoleMessage(String, int, String)
敬上
或
onConsoleMessage(ConsoleMessage)
,
當您在網頁上執行主控台方法時,Android 就會呼叫
適當 onConsoleMessage()
方法,以便回報錯誤。以上方的範例程式碼為例
Logcat 訊息的列印結果如下所示:
Hello World -- From line 82 of http://www.example.com/hello.html
以下是與偵錯相關的其他資源:
測試實驗性網路功能
在與 Google Chrome 的chrome://flags
網頁類似,您也可以測試實驗功能
WebView
中的網頁功能。
如要採用這種方式,請按照下列步驟進行:
安裝
WebView
的其中一個預先發布版 管道 (Beta 版、dev 或 Canary){: .external}。切換
WebView
管道 變更為安裝的預先發布版本。按一下「WebView 開發人員工具」啟動器:
圖1. 應用程式安裝在下列裝置上代表的 WebView 開發人員工具圖示 裝置。在開發人員工具中按一下「旗標」,即可搜尋任何實驗功能 您想啟用或停用的網頁。這項變更會套用至以下平台的所有
WebView
個執行個體 裝置。停止並重新啟動應用程式,即可開始測試新功能。
如要進一步瞭解如何切換旗標,請參閱 WebView
開發人員工具
說明文件。