硬件加速

本文深入探讨了Android硬件加速的概念、作用及其在不同版本Android系统中的默认启用方式。通过实例分析,揭示了硬件加速开关开启后可能引发的问题,并提供了解决策略。重点在于帮助开发者理解硬件加速的原理及其在特定场景下的潜在风险。
        硬件加速开关是android3.0开始引入的,大致有个印象,但是我们代码中并没有打开过硬件加速开关。自己写了个demo,log显示硬件加速开关确实已经被打开。看来是google做了些什么,去官方文档上看了看,有下面一句话:
Beginning with Android 4.0, hardware acceleration for all windows is enabled by default if your application has set either targetSdkVersion or minSdkVersion to “14" or higher.
到这里,硬件加速开关打开的原因找到了,为什么在这个应用的这个界面才会引入问题呢。

        先学习下android硬件加速的一些概念再说。android自3.0引入了硬件加速,即使用GPU进行绘图,旨在得到更加平滑的动画更加平滑滚动,和更好的总体性能和响应用户的交互。但是硬件加速并不能完善的支持所有的绘图,通常表现为内容不可见,异常或渲染错误。一般出现了问题,就需要关闭硬件加速开关。

       在项目中,对于不需要开启硬件加速的可以重载这个方法,不做任何实现即可。

       protected void hardwareAccelerate() {
// 4.0以上支持硬件加速,使H5页面内支持视频播放
if (android.os.Build.VERSION.SDK_INT >= 14) {
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED,
WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED);
}
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值