14

To enable hardware acceleration in an Android 3.0+ app I can do this:

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

But the app won't build with that attribute present if I target an OS version pre-11. Is there a way to enable hardware acceleration in an app that targets both Honeycomb and prior, or is hardware acceleration only available for those creating apps that only work on 3.0+?

I had a look for a method on Activity but I don't see one.

4

2 に答える 2

20

ビルド ターゲットを 3.0 バージョンに設定してみてください。ただし、minsdkversionサポートする最も古いバージョンに設定してください。少なくともビルドできるはずですが、古いバージョンではハードウェア アクセラレーションは有効になりません。

ドキュメントから:

Android 3.0 以降では、多くの一般的な 2D グラフィック操作のパフォーマンスを向上させるために、ハードウェア アクセラレーションされた OpenGL レンダラーをアプリケーションで使用できます。ハードウェア アクセラレーション レンダラーを有効にすると、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 で、[プロジェクト プロパティ] > [Android] に移動し、API レベルが 11 以上のプロジェクト API ターゲット (「Android 3.0」など) を選択します。

于 2011-04-27T16:11:31.883 に答える