Android Gradle プラグイン 7.2.0(2022 年 5 月)
Android Gradle プラグイン 7.2.0 はメジャー リリースで、さまざまな新機能や改善措置が組み込まれています。
このマイナー アップデートは Android Studio Chipmunk パッチ 2 のリリースに対応し、以下のバグ修正が含まれています。
- 問題 #232438924: AndroidGradlePlugin バージョン 7.2 で、Transform API を ASM API と併用すると破損する
- 問題 #231037948: AGP 7.2.0-rc01 :buildSrc:generatePrecompiledScriptPluginAccessors - shadow/bundletool/com/android/prefs/AndroidLocation$AndroidLocationException
このマイナー アップデートは Android Studio Chipmunk パッチ 1 のリリースに対応し、以下のバグ修正が含まれています。
- 問題 #230361284: bundletool でベースライン プロファイルが正しくパッケージ化されない
このリリースに含まれるその他のバグの修正については、Android Studio Chipmunk パッチ 1 リリースノートをご覧ください。
互換性
最小バージョン | デフォルトのバージョン | |
---|---|---|
Gradle | 7.3.3 | 7.3.3 |
SDK Build Tools | 30.0.3 | 30.0.3 |
NDK | なし | 21.4.7075529 |
JDK | 11 | 11 |
Jetifier 警告と Build Analyzer 内のチェック
プロジェクトの gradle.properties
ファイルに android.enableJetifier=true
が含まれていると、Build Analyzer が警告を表示するようになりました。このフラグは、AndroidX をネイティブにサポートしていないライブラリで AndroidX を有効にするために、以前のバージョンの Android Studio で導入されました。しかし、ほとんどのライブラリ エコシステムは AndroidX をネイティブにサポートするように移行しており、おそらく Jetifier フラグはプロジェクトで不要になっています。また、このフラグはビルドのパフォーマンスを低下させる可能性があります。この警告が表示された場合は、Build Analyzer 内でチェックを実行して、フラグを削除できるかどうかを確認できます。
テスト フィクスチャのサポート
Android Studio Chipmunk ベータ版 1 以降では、Android と Java の両方のテスト フィクスチャがサポートされます。テスト フィクスチャ機能と Java プロジェクトでの使用方法について詳しくは、テスト フィクスチャの使用{:.external} に関する Gradle のガイドをご覧ください。
Android ライブラリ モジュールでテスト フィクスチャを有効にするには、ライブラリ レベルの build.gradle
ファイルに次の行を追加します。
android {
testFixtures {
enable true
// enable testFixtures's android resources (disabled by default)
// androidResources true
}
}
デフォルトでは、ライブラリを公開すると、メイン ライブラリとともにテスト フィクスチャ AAR も公開されます。Gradle Module Metadata ファイルには、Gradle が testFixtures
コンポーネントをリクエストする際に適切なアーティファクトを消費できるようにするための情報が格納されます。
リリース バリアントでライブラリのテスト フィクスチャ AAR の公開を無効にするには、ライブラリ レベルの build.gradle
ファイルに次の行を追加します。
afterEvaluate {
components.release.withVariantsFromConfiguration(
configurations.releaseTestFixturesVariantReleaseApiPublication) { skip() }
components.release.withVariantsFromConfiguration(
configurations.releaseTestFixturesVariantReleaseRuntimePublication) { skip() }
}
公開されている Android ライブラリのテスト フィクスチャ AAR を使用するには、Gradle のヘルパー メソッド testFixtures()
を使用します。
dependencies {
testImplementation testFixtures('com.example.company:publishedLib:1.0')
}
lint は、デフォルトでテスト フィクスチャ ソースを分析します。次のようにして、テスト フィクスチャ ソースを無視するように lint を設定できます。
android {
lint {
ignoreTestFixturesSources true
}
}
重複するコンテンツ ルートはサポート対象外
AGP 7.2 以降、複数のソースセットで同じソース ディレクトリを共有できなくなりました。たとえば、単体テストとインストルメンテーション テストの両方に同じテストソースを使用することはできません。詳細については、デフォルトのソースセット構成を変更するをご覧ください。