0

Android 2.1 (API レベル 7) までのデバイスをサポートする Android 用のアプリケーションを開発しています。大画面のデバイスではハードウェア アクセラレーションを有効にしたいと考えています。そうしないと特定の状況で遅延が発生するためです。同時に、画像用に大量のメモリを使用するため、古いデバイスでのアプリケーションのメモリ割り当てに問題があります。ハードウェア アクセラレーションを有効にすると 8 MB の RAM が使用されることをここで読みました。

ハードウェア アクセラレーションによる描画は、すべてが勝利に満ちているわけではありません。たとえば、Nexus S や Galaxy Nexus などのデバイスの PVR ドライバーでは、プロセスで OpenGL の使用を開始するだけで、約 8MB の RAM を消費します。

古いデバイスにはアプリケーションごとに 24 MB の RAM しかないため、これにより私のアプリはすぐに OutOfMemoryException になります。新しいデバイスでは、アプリごとに最大 64 MB あります。だから問題はないはずです。私の質問は、ハードウェアアクセラレーションがオンになっているときに、ハニカム以前のデバイスでどのように動作するかです。それは単に何もないので、8 MB の RAM を使用しないでください。それとも、有効にした場合でも、この 8 MB RAM を使用しますか?

ご回答ありがとうございます。

乾杯男

4

1 に答える 1

0

そうしているうちに、答えが見つかりました。とてもシンプルです。Android マニフェスト ファイルの android:hardwareAccelerated タグは、API レベル 11 で導入されました。そのため、11 より前のデバイスはこのタグを理解できないため、何もしません。

乾杯

于 2012-11-08T11:50:42.707 に答える