我需要在从 android 的 webview 调用 javascript 时捕获错误;如果缺少 javascript,我需要捕获一些事件并在 android 中执行其他操作。
例如,我有 webview.loadUrl("javascript:doSomething");
该页面缺少“doSomething”,因此我可以在 logcat 中看到以下错误:
ReferenceError:找不到变量:doSomething ...
我需要捕获这个错误并处理它,例如
public override void onJsErrorReceived(String errorDescription)
{
if(errorDescription.contains("doSomething"))
handleError();
}
我在 webview 中找不到任何此类事件,在 webview 的客户端(WebChromeClient 和 WebViewClient)中也找不到要覆盖的事件。
有人有想法吗?
谢谢
最佳答案
根据 this question ,你需要覆盖的方法是:
WebChromeClient.onConsoleMessage(String message, int lineNumber, String sourceID)
和
WebChromeClient.onConsoleMessage(ConsoleMessage cm)
,
关于javascript - android webview javascript调用缺少的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9081000/