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

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

互換性

Android Gradle プラグイン 8.6 でサポートされている最大 API レベルは 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 エラーが発生する
[ライブラリ desugar] lint で desugar が有効になっていると誤検出の警告 NewApi 警告が表示される
Wear で認証情報マネージャーの lint 警告が正しくない
Lint: SetTextI18n で空の文字列の割り当てに関するエラーが発生する。
lint の統合
含まれているビルドで lint タスクが失敗する
圧縮ツール(R8)
[r8 8.5]API モデリングを無効にすると、r8 の水平クラスの統合により Android5 で検証エラーが発生する
Gradle プラグイン 8.4.0/8.5.0 でビルドされた Wear OS リリースで、java.lang.IllegalAccessError が発生することがある
R8 は、空のメンバー クラスを () のマッチに暗黙的に置き換えます。
[r8 8.5] 実行時の NPE の原因となる垂直クラスの統合
右シフト演算子が原因である可能性がある R8 処理エラー
R8(AGP 8.5.0 以降)が失敗し、「アイテム: ... を 2 つの異なるアイテム:... に予期せず書き換え」というエラーが表示される
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 タスク/変換で非確定的な class.dex コンテンツを生成する
圧縮ツール(R8)
R8 8.5.x の SimpleInliningConstraintAnalysis での StackOverflowError
タスク :xxxx:minifyXXXReleaseWithR8 エラー: R8: java.util.ConcurrentModificationException
java.lang.NullPointerException: 「com.android.tools.r8.ir.analysis.type.TypeElement.asClassType()」を呼び出すことができない