onConsoleMessage 捕获的控制台消息不完整
console message captured by onConsoleMessage is incomplete
我有 WebView
正在加载网页,我设置了自定义 WebChromeClient
来捕获控制台日志,但我发现它与浏览器中的控制台相比不完整。 cm.message()
返回的消息不包含传递给控制台方法的所有值。
console.log("Test");//Test
会起作用,但后面只会显示第一个参数
console.log("test", 1);//test - expected test 1
有什么解决办法吗?
一个有趣的错误!
您可以将 console.log
包装在您自己的函数中,将所有参数连接成一个字符串。 JavaScript 执行此操作的代码如下:
(function() {
var oldLog = console.log;
console.log = function() {
oldLog.call(console, Array.prototype.slice.call(arguments).join(" "));
}
})();
您可以使用 WebView.loadUrl('javascript:...')
或 WebView.evaluateJavascript
.
将其插入您的页面
我有 WebView
正在加载网页,我设置了自定义 WebChromeClient
来捕获控制台日志,但我发现它与浏览器中的控制台相比不完整。 cm.message()
返回的消息不包含传递给控制台方法的所有值。
console.log("Test");//Test
会起作用,但后面只会显示第一个参数
console.log("test", 1);//test - expected test 1
有什么解决办法吗?
一个有趣的错误!
您可以将 console.log
包装在您自己的函数中,将所有参数连接成一个字符串。 JavaScript 执行此操作的代码如下:
(function() {
var oldLog = console.log;
console.log = function() {
oldLog.call(console, Array.prototype.slice.call(arguments).join(" "));
}
})();
您可以使用 WebView.loadUrl('javascript:...')
或 WebView.evaluateJavascript
.