ハードウェアアクセラレーションを使用する(1)ではハードウェアアクセラレーションの実装方法を紹介しました。今回はハードウェアアクセラレーションが最大限に効果を発揮させるために検討しなければならないことを紹介します。ハードウェアアクセラレーションの動作を最適化するためにハードウェアアクセラレーションは描画やアニメーションの処理を高速化してくれますが、どんな場合でも常に100%の効果が得られるわけではありません。ハードウェアアクセラレーションの効果を最大限に引き出す為に以下のことを考え、アプリケーションの開発を行ってください。過度なViewの配置はアプリケーションの動作を重くする要因です。最小限のViewの配置にすることはアプリケーションの動作を最適化する最も簡単で効率的な方法です。Viewを入れ子にし過ぎていないか確認してみてください。Viewを入れ子にし、レイヤーを増やすことはアプリケーションの動作を重くします。本当に入れ子にする必要があるかどうかを十分に検討し、極力最小限のレイヤーに抑えれるよう工夫しましょう。描画のイベントが実行される度に新しいPaintオブジェクトやPathオブジェクトを作成してしまうことはよくある間違いです。これはGCの動作を阻害します。描画したオブジェクトの形状を変更する度にハードウェアのパイプラインはは新しいマスクを作成しなければなりません。ビットマップを変更する度にGPUはテクスチャを更新しなければなりません。View#setAlphaメソッド、AlphaAnimation、ObjectAnimatorのalphaプロパティは描画のために通常の倍以上のバッファが必要になります。大きいViewにalphaを使用する場合はLAYER_TYPE_HARDWAREの使用を検討して下さい。アニメーションに効果的なハードウェアアクセラレーションアニメーションを実行する場合にハードウェアアクセラレーションを使用すると、非常にエクスペリエンスな体験をユーザーに提供することが可能になります。複雑なViewをアニメーションさせるとどうしても60fps相当のパフォーマンスを維持する事が難しくなります。アニメーションの実行によるパフォーマンス低下に悩まされる場合はハードウェアアクセラレーションの使用を検討しましょう。2.0(β)に対応した解説書です。