在Android应用中启用硬件加速,定位Honeycomb和先前版本

时间:2011-03-01 18:39:01

标签: android android-3.0-honeycomb

要在Android 3.0+应用中启用硬件加速,我可以这样做:

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

但如果我定位11之前的操作系统版本,应用程序将不会使用该属性构建。有没有办法在针对Honeycomb和之前的应用程序中启用硬件加速,或者硬件加速仅适用于那些只能在3.0 +上运行的应用程序?

我在Activity上查找了一个方法,但我没有看到。

2 个答案:

答案 0 :(得分:20)

尝试将构建目标设置为3.0版本,但将minsdkversion设置为您要支持的最旧版本。它至少应该允许你构建,但不会在旧版本上启用硬件加速。

来自documentation

  

从Android 3.0开始,应用程序可以使用硬件加速的OpenGL渲染器,以提高许多常见2D图形操作的性能。启用硬件加速渲染器后,Canvas,Paint,Xfermode,ColorFilter,Shader和Camera中的大多数操作都会加速。这样可以实现更平滑的动画,更平滑的滚动以及更好的响应性,即使对于未明确使用框架的OpenGL库的应用程序也是如此。

我自己还没有测试过3.0 API,但文档似乎说这应该得到支持......

<manifest ... >
    <uses-sdk android:minSdkVersion="4" 
          android:targetSdkVersion="11" />
    <application ... >
    ...
    <application>
</manifest>

(从Optimizing Apps for Android 3.0切割

答案 1 :(得分:9)

您可以将min / targetSdkVersion保留在清单中。我在3&amp; 8.您需要做的是更改您正在编译的SDK。在Eclipse中,转到Project Properties&gt; Android并选择API级别为11或更高的Project API目标(例如,“Android 3.0”)。