14

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

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

但是,如果我以 11 之前的操作系统版本为目标,则该应用程序不会使用该属性构建。有没有办法在针对 Honeycomb 和先前版本的应用程序中启用硬件加速,或者硬件加速仅适用于那些创建仅适用于 3.0+ 的应用程序的人?

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

4

2 回答 2

20

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

文档中:

从 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>

(摘自为 Android 3.0 优化应用程序

于 2011-03-01T19:10:43.980 回答
9

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

于 2011-04-27T16:11:31.883 回答