模拟 WebView 应用时获取 Javascript 控制台
Get Javascript console when emulating WebView app
我是 Android Dev 的新手,我正在尝试创建一个基于 WebView 的应用程序。我掌握了基础知识,我直接在我的 phone 上模拟该应用程序,想知道是否有办法获得 Chrome PC 版本中的 Javascript console
。
我的设备是 运行 Android 4.2.1 API 17 级。我无法在我的计算机上模拟应用程序,它不起作用。
我已经看过 this topic on Whosebug,但对我没有帮助。
那么,我尝试了什么(来自 Whosebug 主题的示例):
从我的设备到我的计算机的远程调试:我不能因为我的设备是 运行 Android 4.2.1 并且至少需要 Android 4.4+.
JavaScript 控制台:我无法访问也没有在我的 WebView 应用程序中实现浏览器栏(并且不想实现一个...)
原答案:我把一些 console.log('test')
和 console.error('test')
放在 window.onload function
上,看看能否在 logcat
和 ADB logs
但我找不到它们,即使我输入 adb logcat
来搜索它们。
有人可以帮助我吗?我真的不知道如何获得控制台,并且真的需要它...
谢谢!
您提到的答案是针对 Android 浏览器应用程序,而不是针对 WebView 组件。
为了从 console.log()
系列函数中获取输出,您需要为 WebView 设置一个 WebChromeClient
并覆盖 onConsoleMessage()
(doc) 方法,如下所示:
webView.setWebChromeClient(new WebChromeClient() {
@Override
public boolean onConsoleMessage(ConsoleMessage consoleMessage) {
android.util.Log.d("WebView", consoleMessage.message());
return true;
}
});
我是 Android Dev 的新手,我正在尝试创建一个基于 WebView 的应用程序。我掌握了基础知识,我直接在我的 phone 上模拟该应用程序,想知道是否有办法获得 Chrome PC 版本中的 Javascript console
。
我的设备是 运行 Android 4.2.1 API 17 级。我无法在我的计算机上模拟应用程序,它不起作用。
我已经看过 this topic on Whosebug,但对我没有帮助。
那么,我尝试了什么(来自 Whosebug 主题的示例):
从我的设备到我的计算机的远程调试:我不能因为我的设备是 运行 Android 4.2.1 并且至少需要 Android 4.4+.
JavaScript 控制台:我无法访问也没有在我的 WebView 应用程序中实现浏览器栏(并且不想实现一个...)
原答案:我把一些
console.log('test')
和console.error('test')
放在window.onload function
上,看看能否在logcat
和ADB logs
但我找不到它们,即使我输入adb logcat
来搜索它们。
有人可以帮助我吗?我真的不知道如何获得控制台,并且真的需要它...
谢谢!
您提到的答案是针对 Android 浏览器应用程序,而不是针对 WebView 组件。
为了从 console.log()
系列函数中获取输出,您需要为 WebView 设置一个 WebChromeClient
并覆盖 onConsoleMessage()
(doc) 方法,如下所示:
webView.setWebChromeClient(new WebChromeClient() {
@Override
public boolean onConsoleMessage(ConsoleMessage consoleMessage) {
android.util.Log.d("WebView", consoleMessage.message());
return true;
}
});