我正在尝试在应用程序的 WebView 中运行 javascript。我正在开发 Nexus 7。
html / javascript 在 Chromium 上运行良好,但平板电脑上没有发生某些操作。有没有办法查看平板电脑上是否有任何 javascript 本身失败?一种控制台视图?
我正在尝试在应用程序的 WebView 中运行 javascript。我正在开发 Nexus 7。
html / javascript 在 Chromium 上运行良好,但平板电脑上没有发生某些操作。有没有办法查看平板电脑上是否有任何 javascript 本身失败?一种控制台视图?
您实际上可以从 WebView 接收控制台消息,这将允许您捕获它引发的错误。
为此:
例子:
final WebView webView = (WebView) findViewById(R.id.webview_terms_conditions);
WebSettings webSettings = webView.getSettings();
webSettings.setJavaScriptEnabled(true);
webView.setWebChromeClient(new WebChromeClient() {
@Override
public boolean onConsoleMessage(ConsoleMessage consoleMessage) {
Log.d("MyApplication", consoleMessage.message() + " -- From line "
+ consoleMessage.lineNumber() + " of "
+ consoleMessage.sourceId());
return super.onConsoleMessage(consoleMessage);
}
});
webView.loadUrl(getString(R.string.url_terms_conditions));
与此处所说的类似,尽管该文档不完整并且使用了已弃用的方法。
在 Android KitKat 上运行时,还可以启用远程调试!
您可以使用Remote Debugging WebViews
使用 Chrome 开发者工具在您的原生 Android 应用程序中调试 WebView。
在 Android 4.4 (KitKat) 或更高版本上,使用 DevTools 调试原生 Android 应用程序中的 WebView 内容。
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
WebView.setWebContentsDebuggingEnabled(true);
}
您也许可以使用Firebug lite。它只是一个书签,因此您可以在任何页面上打开它。
另外,请搜索还有很多其他类似的问题:
在 Android Studio“北极狐”中,只需查看 logcat。带有“cromium”标签的消息。