RSS Android開発者ブログ フォロー 最適化されたリソース縮小でアプリのパフォーマンスを向上させる 優れたユーザーエクスペリエンスには、高速で小型のアプリが不可欠です。アプリ最適化ツールである R8 は、未使用のコードとリソースを削除し、実行時のパフォーマンスを最適化することでこれを実現します。Android Gradle Plugin バージョン 8.12.0 では、R8 を使用した最適化されたリソース縮小が導入されました。この機能により、アプリが小型化され、ダウンロードの高速化、インストールの迅速化、メモリ使用量の削減につながります。その結果、起動が高速化され、レンダリングが向上し、アプリケーション応答なし (ANR) エラーが減少します。新しいアプローチでは、リソース縮小とコード最適化が統合されており、R8 が未使用のコードによってのみ参照されるリソースを特定して削除できるようになります。これにより、AAPT2 の無条件保持ルールが不要になり、未使用のコードとリソースをより正確に破棄できます。以前は、コードとリソースの最適化が別々に行われていたため、AAPT2 はリソースによって参照されるコードを保持し、その結果、R8 がその未使用のコードとその関連リソースを保持していました。最適化されたリソース縮小を有効にするには、開発者は build.gradle.kts ファイルで isMinifyEnabled と isShrinkResources を true に設定し、gradle.properties ファイルに android.r8.optimizedResourceShrinking=true を追加する必要があります。リソースとコードを共有するアプリでは、50% を超える大幅なアプリサイズの改善が観察されています。最適化されたリソース縮小は、境界を越えた参照追跡を通じて、リソースと DEX コードの両方を削除することにより、さらにサイズを削減します。AGP 9.0.0 以降では、リソース縮小が有効になっている場合、この最適化されたアプローチがデフォルトになります。開発者は、試してみて、問題があれば報告することが推奨されています。 Improve app performance with optimized resource shrinking android-developers.googleblog.com
build.gradle.ktsファイルでisMinifyEnabledとisShrinkResourcesを true に設定し、gradle.propertiesファイルにandroid.r8.optimizedResourceShrinking=trueを追加する必要があります。リソースとコードを共有するアプリでは、50% を超える大幅なアプリサイズの改善が観察されています。最適化されたリソース縮小は、境界を越えた参照追跡を通じて、リソースと DEX コードの両方を削除することにより、さらにサイズを削減します。AGP 9.0.0 以降では、リソース縮小が有効になっている場合、この最適化されたアプローチがデフォルトになります。開発者は、試してみて、問題があれば報告することが推奨されています。