有没有办法捕获Web控制台错误?

sca*_*moi 8 android webview android-webview

使用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
Run Code Online (Sandbox Code Playgroud)

我希望能够捕获这些错误并以某种方式处理它们.例如,发出消息或与我的应用程序相关的任何内容,此时实际处理与核心问题无关:

有没有办法捕捉这些错误?即以某种方式可以通知我的应用程序?

注意:这不是一个Javascript问题.我不是在编程网站.我正在访问一个现有的网站,其实施是我无法控制的.这是一个WebView问题(目前在Android环境中,但也可能在其他能够托管WebView的环境中).

小智 5

你有一个网站的例子吗?

你应该能够覆盖 WebChromeClient.onConsoleMessage(ConsoleMessage consoleMessage).