【问题标题】:Updating WebView on Android 5在 Android 5 上更新 WebView
【发布时间】:2018-04-03 14:33:55
【问题描述】:

我正在尝试为 Moverio BT-300 (Android 5.1) 创建一个 WebView 应用程序。我已经让它运行一些 javascript 文件,但我无法让 d3.js(版本 4.11)在 BT-300 上正常工作。

d3 脚本在 Acer 平板电脑上完全相同的 WebView 应用程序上完美运行,所以我怀疑是 WebView 版本的问题。使用Log.i("WebViewActivity", "UA: " + webView.getSettings().getUserAgentString());,这是 Acer 平板电脑上的输出:

I/WebViewActivity: UA: Mozilla/5.0 (Linux; Android 5.0.2; A3-A30 Build/LRX22G; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/61.0.3163.98 Safari/537.36

在 Moverio BT-300 上:

I/WebViewActivity: UA: Mozilla/5.0 (Linux; Android 5.1.1; EMBT3C Build/R1.4.0) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/39.0.0.0 Safari/537.36

即使 Android 较新,Moverio 的 Chrome 也较旧,我的问题是如何将其更新到较新的版本?

-- 我的尝试--

  • 我下载了 WebView APK here 并安装在 Moverio 上,但 WebView 仍在使用旧版 Chrome。

  • Android 7 有一个名为更改 WebView 实现的选项,但这不是 Android 5 的选项。

-- 旁注--

d3 不起作用的事实可能意味着它使用的库之一不兼容,如 here 所述。但是,Moverio WebView 可以运行 CSS 脚本,用 js 操作 DOM,播放 HTML5 视频,绘制 SVG。库兼容性可能是个问题,但更新 WebView 是一种更直接的方法,因此我不必淡化 d3 中的未来开发。

【问题讨论】:

    标签: javascript android d3.js svg webview


    【解决方案1】:

    问题找到了。我在我的js中使用了padStart(),chrome直到57才支持它。D3兼容性没有问题,我删除padStart()后它可以工作!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-19
      • 1970-01-01
      • 2017-02-24
      • 1970-01-01
      • 1970-01-01
      • 2017-04-06
      • 2013-01-30
      相关资源
      最近更新 更多