使用WebView,某些网站需要很长时间才能完成页面加载(如WebViewClient.onPageFinished()中所述),当发生这种情况时,这可以通过以下类型的Web控制台错误来表征:
E/Web Console(1916): Unsafe JavaScript attempt to access frame with URL
http://mobile.example.com from frame with URL
http://ad.doubleclick.net/adi/interactive.example.com/front_sub;sz=320x50;ord=7340930261983.
Domains, protocols and ports must match.
05-26 10:44:15.274: E/Web Console(1916): at null:1
我希望能够捕获这些错误并以某种方式处理它们。例如发出消息或与我的应用程序相关的任何内容,实际处理在这一点上与核心问题无关:
有没有办法捕获这些错误?即以某种方式可以通知我的应用程序?
注意:这不是一个Javascript问题。我不是在编程网站。我正在访问现有的网站,其实施不受我的控制。这是一个WebView问题(目前在Android环境中,但也可以在其他能够托管WebView的环境中)。
答案 0 :(得分:5)
你有一个网站的例子吗?
您应该能够覆盖WebChromeClient.onConsoleMessage(ConsoleMessage consoleMessage).
答案 1 :(得分:0)
我建议谷歌为Debugging Web Apps
提供此示例请注意,只有" part1"当您在console.log
函数中提供以逗号分隔的参数列表时显示,这是一段用于测试的JavaScript代码:
console.log("part1","part2");
结果将是:
part1 -- From line 1 of http://example.js10/test.js