首页 > 编程知识 正文

android系统webview,chrome gpu加速

时间:2023-05-05 07:46:58 阅读:172448 作者:1320

如何强制打开Android Webview GPU加速常用方法在浏览器中启用GPU加速可以提高渲染性能,并可以有效利用硬件功能来提高页面的绘制帧速率当Android平台使用webview时,开发人员通常通过以下两种方式使webview使用硬件加速功能呈现页面:

方法1 :

将Android : hardware accelerated=' true '配置添加到APP应用程序的启动配置中,如下图所示。

方法2 :

在webview中初始化的方法中使用以下代码。

wv.setlayertype (view.layer _ type _ hardware,null ); 这些方法在大多数设备上有效。 当您使用chrome提供的远程调试工具调试webview中打开的页面并查看fps看板卡时,可以看到已启用GPU光栅,如下图所示。

但是,对于一些小型机型和安卓系统,这两种方法都无效,因为FPS面板会显示GPU Raster关闭,网页上的一些动画是使用CPU绘制的,非常纸箱如下图所示。

这两种常用方法都无效,有没有其他方法呢?

当命令行参数遇到此问题时,我联想到chrome app可以在启动时传递命令行参数

-force-gpu-rasterization

强制打开GPU Raster,可以用同样的方法使用webview组件吗? 在webview官网的文档旅行了一段时间后,发现有。

Android webview在启动时在/data/local/tmp/目录下找到一个名为webview-command-line的文件,并将其内容作为启动参数读取。 此外,文件内容的参数格式与chrome app相同。 因此,通过将命令行参数写入该文件,实现了以下目的:

写入CD/data/local/tmptouchwebview-command-line echo ' _-force-GPU-rasterization ' webview-command-line

从图中可以看到,GPU Raster已经打开,帧速率也上升到了43FPS。

相关资料:

Commandline flags

CommandLineUtil

run-chromium-with-flags

howtogetgpurasterization-thechromiumprojects

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。