Android笔记-hardwareAccelerated 硬件加速详解

本文介绍了从Android3.0开始引入的硬件加速功能,详细阐述如何通过全局、Activity、Window和View级别启用或禁用硬件加速,并强调了硬件加速对自定义View和绘制操作的影响。同时提供了相关代码示例,帮助理解硬件加速的工作原理及其应用场景。
摘要由CSDN通过智能技术生成


从Android3.0(API Level 11)开始,Android 2D渲染管道能够更好的支持硬件加速。硬件加速执行的所有的绘图操作都是使用GPU在View对象的画布上来进行的。因为启用硬件加速会增加资源的需求,因此这样的应用会占用更多的内存。 

启用硬件加速的最容易的方法是给整个应用程序都打开全局硬件加速功能。

如果应用程序只使用标准的View和Drawable,那么打开全局硬件加速不会导致任何的不良的绘制效果。但是,因为硬件加速并不支持所有的2D图形绘制操作,所以对于那些使用定制的View和绘制调用的应用程序来说,打开全局硬件加速,可以会影响绘制效果。问题通常会出现在对那些不可见的元素进行了异常或错误的像素渲染。为了避免这种问题,Android提供以下级别,以便可选择性的启用或禁止硬件加速

 1. Application

 2. Activity 

3. Window 

4. View 

如果应用程序执行了定制化的绘图,就要在实际的带有硬件加速的硬件设备上测试,以便发现问题。  
控制硬件加速 
能够用以下级别来控制硬件加速 Application级别 
在应用的Android清单文件中,把下列属性添加到<application>元素中,来开启整个应用程序的硬件加速。 

<application android:hardwareAccelerated="true" ...>

Activity级别 

如果应用程序不能够正确的使用被打开的全局硬件加速,那么也可以对Activity分别进行控制。在<activity>元素中使用android:hardwareAccelerated属性,能够启用或禁止Activity级别的硬件加速。以下示例启用全局的硬件加速,但却禁止了一个Activity的硬件加速: <application android:hardwareAccelerated="true">     <activity ... /> 

    <activity android:hardwareAccelerated="false" /> </application>

Window级别 

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值