Android Gradle プラグイン 8.6.0(2024 年 8 月)

Android Gradle プラグイン 8.6.0 はメジャー リリースで、さまざまな新機能や改善措置が組み込まれています。

互換性

Android Gradle プラグイン 8.6 でサポートされる最大 API レベルは 35 です。その他の互換性情報は次のとおりです。

最小バージョン デフォルトのバージョン 備考
Gradle 8.7 8.7 詳細については、Gradle のアップデートをご覧ください。
SDK Build Tools 34.0.0 34.0.0 SDK Build Tools をインストールまたは設定します。
NDK なし 26.1.10909125 別のバージョンの NDK をインストールまたは設定します。
JDK 17 17 詳細については、JDK バージョンの設定をご覧ください。

修正された問題

Android Gradle プラグイン 8.6.0

修正された問題
Android Gradle プラグイン
AGP 7.0.0-alpha10 回帰: データ バインディングが有効な場合にプラグイン「com.android.internal.library」を適用できない
K2 UAST を使用した場合と使用しない場合で lint を実行したときのエラー
バリアントの androidTest 構成のマニフェストが生成されない
AGP 8.4 がデバッグビルドで起動プロファイルを設定しようとする
[Koala 2024.1.2 Canary 2] 分割 APK でベースライン プロファイル モジュールの実行中にエラーが発生する
ProjectInfo をクリーンアップ / 削除する
AGP DSL の `isIncludeAndroidResources` の古い kdoc を更新
lint がタスクの依存関係を追加せずに res ディレクトリを使用する
AGP 8.5: 実行される「mergeDebugResources」タスクが大幅に増え、ビルドが遅くなる
Variant API を介して srcs ディレクトリを追加すると、想定どおりに動作しない
Dexer(D8)
API データベースを Android 15(API レベル 35)に更新
java.lang.VerifyError: 検証ツールがクラス com.pax.log.LogUtils を拒否: java.lang.StackTraceElement com.pax.log.LogUtils.getCaller(com.pax.log.b, java.lang.StackTraceElement[], int) の検証に失敗しました
lint
注釈付きアノテーションの使用の場合、lint が visitAnnotationUsage を呼び出さない
型使用アノテーションを使用している場合に UnknownNullness lint エラーが発生する
[ライブラリの脱糖] lint で、脱糖が有効になっている場合に NewApi 警告の誤検出が表示される
Wear での認証情報マネージャーの Lint 警告が正しくない
Lint: SetTextI18n が空の文字列の割り当てについて警告します。
lint の統合
含まれているビルドで Lint タスクが失敗する
圧縮ツール(R8)
[r8 8.5]r8 の水平クラスのマージにより、API モデリングを無効にすると Android5 で検証エラーが発生する
Gradle プラグイン 8.4.0/8.5.0 でビルドされた Wear OS リリースで java.lang.IllegalAccessError が発生する可能性がある
R8 は空のメンバー句を () の一致に暗黙的に置き換えます
[r8 8.5] 垂直クラスの統合により実行時に NPE が発生する
R8 処理エラー(右シフト演算子が原因の可能性あり)
R8(AGP 8.5.0 以降)が「Unexpected rewriting of item: ... to two distinct items:...」というエラーで失敗する
R8 で生成された dex ファイルを実行すると、「Unable to find static main(String[]) in 'Test'」と表示される
R8 と D8 でパックされたプログラム間の動作の違い
Kotlin 2.0 に更新した後の R8 NullPointer

Android Gradle プラグイン 8.6.1

修正された問題
Dexer(D8)
Dex 変換タスク/変換で非決定的な classes.dex コンテンツが生成される
圧縮ツール(R8)
SimpleInliningConstraintAnalysis での R8 8.5.x StackOverflowError
Task :xxxx:minifyXXXReleaseWithR8 ERROR: R8: java.util.ConcurrentModificationException
java.lang.NullPointerException: 「com.android.tools.r8.ir.analysis.type.TypeElement.asClassType()」を呼び出せません