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

标签 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

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

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

注意:这不是 Javascript 问题。我不是在编写网站。我正在访问一个现有 网站,其实现超出了我的控制范围。这是 WebView问题(目前在 Android 环境中,但也可能在其他能够托管 WebView 的环境中)。

最佳答案

您有网站示例吗?

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

关于android - 有没有办法捕获 Web 控制台错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16760466/

相关文章:

Android:在 WebView 中缩放 SVG

java - 自定义对话框执行 NPE

html - 需要将 HTML 文件呈现为一本书并在 Android 上保留 CSS 格式

android - 如何捕捉与 RecyclerView 一起使用的 ItemTouchHelper 的 Drop Action

android - 如何在android Fragment中显示日期选择器

Android WebView : handling orientation changes

android - 如何模仿默认浏览器从webview下载.apk文件?

android - sqlite3_busy_handler 回调算法

java - 删除多个文件 Java (Android)

java - 定义shouldOverrideUrlLoading以在所需应用程序中加载URL?