在 Android WebView 中启用 WebGL

2024-02-26

如何在 Android 5.1.1 模拟器的 WebView 小部件中启用 WebGL?我通过检查了 WebGL 状态Webgl 报告 http://webglreport.com结果是“此浏览器支持 WebGL,但它被禁用或不可用。有时这是由于浏览器拒绝旧视频驱动程序的结果。如果可能,请尝试更新您的视频驱动程序”。

我也尝试使用人行横道 https://crosswalk-project.orgAndroid 4.4.4模拟器上的webview也有同样的问题,但我通过添加xwalk-command-line修复了它xwalk --ignore-gpu-blacklist。是否可以为标准 WebView 小部件制作类似的东西?


更新:WebView 团队表示,由于安全/稳定性风险,WebView 现在或将来的计划不允许覆盖 GPU 黑名单:更多细节 https://plus.google.com/117876205278601579117/posts/M3JQsTShckQ.

//

适用于 Android 47 的 Chrome 和 Chromium/WebView 47 使用不同的 GPU 黑名单和/或错误解决方法。即使在相同的硬件上,允许在一个中成功渲染的内容也可能不允许在另一个中成功渲染。这两种浏览器计划每 6 周向 Play 商店发布一次更新。

例如:我有一台 Nexus 10、Mali T-604 平板电脑(Lollipop 5.1.1。此外,Android Studio 1.5.1 带有 SDK 6.0 Marshmallow API 23 或 22)。

在 Android 版 Chrome 中——

  • chrome://flags、#ignore-gpu-blacklist 未启用,并且全部重置默认值
  • chrome://gpu,“图形功能状态-WebGL:硬件加速”和重置通知策略 0x0000 令人惊讶(请参阅最后人行横道相关 https://stackoverflow.com/questions/30844557/supporting-webgl-on-android-5s-webview/30916299#30916299) answer
  • webglreport,“该浏览器支持 WebGL 1”
  • get.webgl.org,立方体旋转

在 Web 视图中——

  • webglreport,“此浏览器支持 WebGL 1,但它被禁用或不可用。有时这是由于浏览器拒绝旧视频驱动程序的结果。如果可能,请尝试更新您的视频驱动程序。”
  • get.webgl.org,“嗯。虽然您的浏览器似乎支持 WebGL,但它已被禁用或不可用。如果可能,请确保您正在运行最新的视频卡驱动程序。”

chromium 黑名单(来自 Khronos WebGL 黑名单 wiki 的链接):“GPU 光栅化和画布在 Nexus 10 上被列入黑名单”。

chromium bug 列表(来自 Khronos WebGL 黑名单 wiki 的链接):“Mali-Txxx 驱动程序不保证刷新顺序”和“从当前显示的缓冲区读取时,Mali-Txxx 驱动程序挂起”。

The Pixel C 平板电脑有一个 Nvidia Tegra X1,它没有出现在 chromium 列表中,我已经确认它WebView 中支持 WebGL.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Android WebView 中启用 WebGL 的相关文章

随机推荐