如何在 Android 5.1.1 模拟器的 WebView 小部件中启用 WebGL?我通过 Webglreport 检查了 WebGL 状态结果是“此浏览器支持 WebGL,但它被禁用或不可用。有时这是旧视频驱动程序被浏览器拒绝的结果。如果可能,请尝试更新您的视频驱动程序”。
我也尝试使用 Crosswalk Android 4.4.4 模拟器上的 webview 也有同样的问题,但我通过添加 xwalk-command-line xwalk --ignore-gpu-blacklist
修复了它。是否可以为标准 WebView 小部件制作类似的东西?
最佳答案
更新:WebView 团队表示,由于安全/稳定性风险,WebView 不允许在现在或 future 的计划中覆盖 gpu 黑名单:more details .
//
Chrome for Android 47 和 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(请参阅最后一个 Crosswalk related)回答
- webglreport, "此浏览器支持 WebGL 1"
- get.webgl.org,立方体旋转
在 WebView 中——
- webglreport,“此浏览器支持 WebGL 1,但它已被禁用或不可用。有时这是旧视频驱动程序被浏览器拒绝的结果。如果可能,请尝试更新您的视频驱动程序。”
- get.webgl.org,“嗯。虽然您的浏览器似乎支持 WebGL,但它已被禁用或不可用。如果可能,请确保您运行的是最新的视频卡驱动程序。”
chromium 黑名单(来自 Khronos WebGL 黑名单 wiki 的链接):“GPU 光栅化和 Canvas 在 Nexus 10 上被列入黑名单”。
chromium 错误列表(来自 Khronos WebGL 黑名单 wiki 的链接):“Mali-Txxx 驱动程序不保证刷新顺序”和“Mali-Txxx 驱动程序在从当前显示的缓冲区读取时挂起”。
Pixel C 平板电脑有一个 Nvidia Tegra X1,它没有出现在 chromium 列表中,我已经确认它在 WebView 中支持 WebGL。。 p>
关于android - 在 Android WebView 中启用 WebGL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35318029/