Android Gradle プラグイン 8.4 リリースノート

JCenter リポジトリは、2021 年 3 月 31 日に読み取り専用になりました。詳細については、JCenter サービスの更新をご覧ください。

Android Studio ビルドシステムは Gradle をベースにしており、Android Gradle プラグインは Android アプリのビルドに役立つ複数の機能を追加します。通常、Android Gradle プラグイン(AGP)は Android Studio のロックステップで更新されますが、プラグイン(および Gradle システムの残りの部分)は Android Studio から独立して実行され、個別に更新できます。

このページでは、Gradle ツールを最新の状態に保つ方法と、最近のアップデートの内容について説明します。過去のバージョンの Android Gradle プラグインのリリースノートについては、過去のリリースノートをご覧ください。

このバージョンの Android Gradle プラグインで修正された要素を確認するには、クローズされた問題をご覧ください。

Android Gradle プラグインの今後の互換性を破る変更の概要については、 Android Gradle プラグインのロードマップをご覧ください。

Gradle で Android ビルドを設定する方法の詳細については、下記のページをご覧ください。

Gradle ビルドシステムの詳細については、Gradle のユーザーガイドをご覧ください。

Android Gradle プラグインのアップデート

Android Studio をアップデートすると、Android Gradle プラグインを利用可能な最新バージョンに自動的にアップデートするように促すメッセージが表示されることがあります。アップデートに同意するか、プロジェクトのビルド要件に基づいて手動でバージョンを指定するかを選択できます。

プラグインのバージョンは、Android Studio の [File] > [Project Structure] > [Project] メニュー、または最上位の build.gradle.kts ファイルで指定できます。プラグインのバージョンは、その Android Studio プロジェクトでビルドされたすべてのモジュールに適用されます。次の例では、build.gradle.kts ファイルからプラグインをバージョン 8.4.0 に設定しています。

Kotlin

plugins {
    id("com.android.application") version "8.4.0" apply false
    id("com.android.library") version "8.4.0" apply false
    id("org.jetbrains.kotlin.android") version "1.9.23" apply false
}

Groovy

plugins {
    id 'com.android.application' version '8.4.0' apply false
    id 'com.android.library' version '8.4.0' apply false
    id 'org.jetbrains.kotlin.android' version '1.9.23' apply false
}

注意: バージョン番号で動的依存関係('com.android.tools.build:gradle:8.4.+' など)を使用しないでください。この機能を使用すると、予期しないバージョンのアップデートが発生し、バージョンの相違を解決するのが難しくなる可能性があります。

指定したプラグイン バージョンがダウンロードされていない場合は、次回プロジェクトをビルドするときに Gradle がダウンロードします。または、Android Studio のメニューバーで [File] > [Sync Project with Gradle Files] をクリックします。

Gradle のアップデート

Android Studio をアップデートすると、Gradle を利用可能な最新バージョンにアップデートするように促すメッセージが表示されることもあります。アップデートに同意するか、プロジェクトのビルド要件に基づいて手動でバージョンを指定するかを選択できます。

次の表に、Android Gradle プラグインの各バージョンに必要な Gradle のバージョンを示します。最高のパフォーマンスを得るには、Gradle とプラグインの両方について、最新バージョンを使用してください。

プラグインのバージョン必要最小限の Gradle バージョン
8.48.6
8.38.4
8.28.2
8.18.0
8.08.0
7.47.5

古いバージョン

プラグインのバージョン必要な Gradle のバージョン
7.37.4
7.27.3.3
7.17.2
7.07.0
4.2.0 以降6.7.1
4.1.0 以降6.5 以降
4.0.0 以降6.1.1 以降
3.6.0 - 3.6.45.6.4 以降
3.5.0 - 3.5.45.4.1 以降
3.4.0 - 3.4.35.1.1 以降
3.3.0 - 3.3.34.10.1 以降
3.2.0 - 3.2.14.6 以降
3.1.0 以降4.4 以降
3.0.0 以降4.1 以降
2.3.0 以降3.3 以降
2.1.3 - 2.2.32.14.1 - 3.5
2.0.0 - 2.1.22.10 - 2.13
1.5.02.2.1 - 2.13
1.2.0 - 1.3.12.2.1 - 2.9
1.0.0 - 1.1.32.2.1 - 2.3

Gradle のバージョンは、Android Studio の [File] > [Project Structure] > [Project] メニューで指定するか、コマンドラインを使用して更新できます。おすすめの方法は、gradlew スクリプトを更新する Gradle ラッパー コマンドライン ツールを使用することです。次の例では、Gradle ラッパーを使用して Gradle のバージョンを 8.4 に設定しています。なお、Gradle と Gradle ラッパー自体の両方をアップグレードする場合は、このコマンドを 2 回実行する必要があります(詳細については、Gradle ラッパーのアップグレードをご覧ください)。

gradle wrapper --gradle-version 8.4

ただし、AGP をアップデートしたばかりで現在の Gradle バージョンに準拠しなくなった場合などは、失敗する可能性があります。この場合は、gradle/wrapper/gradle-wrapper.properties ファイル内の Gradle ディストリビューション リファレンスを編集する必要があります。次の例では、gradle-wrapper.properties ファイルで Gradle のバージョンを 8.4 に設定しています。

...
distributionUrl = https\://services.gradle.org/distributions/gradle-8.4-bin.zip
...

Android Gradle プラグインと Android Studio の互換性

Android Studio ビルドシステムは Gradle をベースにしており、Android Gradle プラグイン(AGP)は Android アプリのビルドに役立つ複数の機能を追加します。次の表に、Android Studio の各バージョンに必要な AGP のバージョンを示します。

Android Studio バージョン 必要な AGP バージョン
コアラ | 2024 年 1 月 1 日 3.2 ~ 8.5
クラゲ | 2023.3.1 3.2 ~ 8.4
Iguana | 2023.2.1 3.2-8.3
Hedgehog | 2023.1.1 3.2-8.2
Giraffe | 2022.3.1 3.2-8.1
Flamingo | 2022.2.1 3.2-8.0

古いバージョン

Android Studio バージョン 必要な AGP バージョン
Electric Eel | 2022.1.1 3.2-7.4
Dolphin | 2021.3.1 3.2-7.3
Chipmunk | 2021.2.1 3.2-7.2
Bumblebee | 2021.1.1 3.2-7.1
Arctic Fox | 2020.3.1 3.1-7.0

Android Gradle プラグインの新機能については、Android Gradle プラグインのリリースノートをご覧ください。

Android API レベルをサポートするツールの最小バージョン

特定の API レベルをサポートする Android Studio と AGP には最小バージョンがあります。プロジェクトの targetSdk または compileSdk で必要とされるバージョンよりも低いバージョンの Android Studio または AGP を使用すると、予期しない問題が発生する可能性があります。Android OS のプレビュー版をターゲットとするプロジェクトでは、最新プレビュー版の Android Studio と AGP の使用をおすすめします。Android Studio のプレビュー版を安定版と一緒にインストールできます。

Android Studio と AGP の最小バージョンは次のとおりです。

API レベル Android Studio の最小バージョン AGP の最小バージョン
VanillaIceCream のプレビュー クラゲ | 2023.3.1 8.4
34 Hedgehog | 2023.1.1 8.1.1
33 Flamingo | 2022.2.1 7.2

バージョニングの変更(2020 年 11 月)

基盤となる Gradle ビルドツールのバージョン番号により近い番号で管理できるよう、Android Gradle プラグイン(AGP)のバージョン番号の付け方を変更します。

主な変更点は次のとおりです。

  • AGP はセマンティック バージョニングを使用するようになり、互換性のない変更はメジャー リリースとして扱われます。

  • Gradle のメジャー リリースに合わせて、AGP のメジャー バージョンを年 1 回リリースします。

  • AGP 4.2 の次のリリースはバージョン 7.0 となり、Gradle のバージョンも 7.x にアップグレードする必要があります。AGP のメジャー リリースのたびに、基盤となる Gradle ツールのメジャー バージョン アップグレードが必要になります。

  • API はメジャー リリースの約 1 年前からサポート終了となり、それと同時に代替機能が利用可能になります。サポートが終了した API は、約 1 年後のメジャー アップデート時に削除されます。

互換性

Android Gradle プラグイン 8.3 がサポートする最大 API レベルは、API レベル 34 です。その他の互換性に関する情報:

最小バージョン デフォルトのバージョン Notes
Gradle 8.6 8.6 詳細については、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.4 の新機能は次のとおりです。

ライブラリのクラスが縮小される

Android Gradle プラグイン 8.4 以降では、Android ライブラリ プロジェクトを圧縮すると、圧縮されたプログラム クラスがプロジェクト間で公開するために公開されます。つまり、アプリが圧縮バージョンの Android ライブラリ サブプロジェクトに依存している場合、APK には圧縮された Android ライブラリ クラスが含まれます。APK に欠落しているクラスがある場合、ライブラリ保持ルールの調整が必要になることがあります。

AAR をビルドして公開する場合、ライブラリが依存しているローカル jar は圧縮されずに AAR に含まれます。つまり、コード圧縮ツールは実行されません。

以前の動作に戻すには、gradle.properties ファイルで android.disableMinifyLocalDependenciesForLibraries を設定し、バグを報告してください。AGP の今後のバージョンでは、このフラグは削除されます。