【问题标题】:JavasScript not working in android's 4.4.3 webviewJavascript 在 android 4.4.3 webview 中不起作用
【发布时间】:2014-07-31 13:37:18
【问题描述】:

其中一个 android 应用程序使用 Mathjax JavaScript 库来渲染数学符号,使用 android webview。

我的应用程序有一个 html 文件并且正在使用 MathJax JavaScript 文件,但是在 google 更新 4.4.3 之后,html 文件中的 javascript 没有被加载。整个 html 正在加载没有问题,但 JS 拒绝加载没有问题,无论我做什么。

我已经启用了 javascript:

webView.getSettings().setJavaScriptEnabled(true);
webView.setWebViewClient(new MyWebViewClient());
webView.setWebChromeClient(new WebChromeClient());

任何线索为什么会发生这种情况以及如何克服?

【问题讨论】:

  • 试试webView.setWebChromeClient(new InredisChromeClient(this)); webView.setWebViewClient(new InredisWebViewClient(this)); webView.clearCache(true); webView.clearHistory(); webView.getSettings().setJavaScriptEnabled(true); webView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
  • 什么是 InredisChromeClient 和 InredisWebViewClient ??
  • 对不起,试试这个webView.setWebChromeClient(new WebChromeClient(this)); webView.setWebViewClient(new WebChromeClient(this)); webView.clearCache(true); webView.clearHistory(); webView.getSettings().setJavaScriptEnabled(true); webView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
  • 我不认为 WebChromClient 构造函数可以在其构造函数中获取活动对象。

标签: javascript android html webview


【解决方案1】:

可以连接chrome开发工具调试WebView吗?控制台可能有错误。

【讨论】:

  • 嗨,谢谢你的意思是说 JavaScript 文件中可能有错误,这就是为什么它没有得到评估??
  • 很有可能 - 调试说明在这里:developer.chrome.com/devtools/docs/remote-debugging
  • 好的,我现在就这样做,但我有点好奇为什么在 4.4.2 上可以正常工作,而在 4.4.3 上却不能正常工作!!
  • 4.4.3 升级了 WebView 实现,可能是 V8 引擎的变化。可以分享一下 JavaScript 代码吗?
猜你喜欢
  • 2011-11-24
  • 1970-01-01
  • 2018-11-09
  • 1970-01-01
  • 2011-07-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多