Versionshinweise 8.7 des Android-Gradle-Plug-ins

Das JCenter-Repository wurde am 31. März 2021 schreibgeschützt. Weitere Informationen finden Sie unter JCenter-Dienstaktualisierung.

Das Android Studio-Build-System basiert auf Gradle. Das Android Gradle-Plug-in bietet mehrere Funktionen, die speziell für das Erstellen von Android-Apps entwickelt wurden. Das Android Gradle-Plug-in (AGP) wird in der Regel gleichzeitig mit Android Studio aktualisiert. Es kann jedoch unabhängig von Android Studio ausgeführt und separat aktualisiert werden.

Auf dieser Seite wird beschrieben, wie Sie Ihre Gradle-Tools auf dem neuesten Stand halten und was die letzten Updates enthalten. Versionshinweise zu früheren Android-Gradle-Plug-in-Versionen finden Sie hier.

Informationen dazu, was in dieser Version des Android Gradle-Plug-ins behoben wurde, finden Sie in den geschlossenen Problemen.

Eine allgemeine Zusammenfassung der bevorstehenden bahnbrechenden Änderungen am Android Gradle-Plug-in finden Sie in der Roadmap für das Android Gradle-Plug-in.

Weitere Informationen zum Konfigurieren Ihrer Android-Builds mit Gradle finden Sie auf den folgenden Seiten:

Weitere Informationen zum Gradle-Buildsystem finden Sie im Gradle-Nutzerhandbuch.

Android-Gradle-Plug-in aktualisieren

Wenn Sie Android Studio aktualisieren, werden Sie möglicherweise aufgefordert, das Android Gradle-Plug-in automatisch auf die neueste verfügbare Version zu aktualisieren. Sie können das Update akzeptieren oder eine Version basierend auf den Buildanforderungen Ihres Projekts manuell angeben.

Sie können die Plug-in-Version entweder im Menü File > Project Structure > Project (Datei > Projektstruktur > Projekt) in Android Studio oder in der obersten build.gradle.kts-Datei angeben. Die Plug-in-Version gilt für alle Module, die in diesem Android Studio-Projekt erstellt wurden. Im folgenden Beispiel wird das Plug-in anhand der Datei build.gradle.kts auf Version 8.7.0 festgelegt:

Kotlin

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

Groovy

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

Achtung:Sie sollten keine dynamischen Abhängigkeiten in Versionsnummern wie 'com.android.tools.build:gradle:8.7.+' verwenden. Die Verwendung dieser Funktion kann zu unerwarteten Versionsupdates und Schwierigkeiten bei der Behebung von Versionsunterschieden führen.

Wenn die angegebene Plug-in-Version nicht heruntergeladen wurde, wird sie von Gradle beim nächsten Build des Projekts heruntergeladen oder Sie klicken in der Android Studio-Menüleiste auf File > Sync Project with Gradle Files.

Gradle aktualisieren

Wenn Sie Android Studio aktualisieren, werden Sie möglicherweise aufgefordert, auch Gradle auf die neueste verfügbare Version zu aktualisieren. Sie können das Update akzeptieren oder eine Version basierend auf den Buildanforderungen Ihres Projekts manuell angeben.

In der folgenden Tabelle ist aufgeführt, welche Gradle-Version für jede Version des Android-Gradle-Plug-ins erforderlich ist. Für eine optimale Leistung sollten Sie sowohl Gradle als auch das Plug-in in der jeweils neuesten Version verwenden.

Plug-in-VersionErforderliche Mindestversion von Gradle
8.78.9
8.68.7
8.58.7
8,48.6
8,38,4
8.28.2
8.18.0
8.08.0
7.47,5

Ältere Versionen

Plug-in-VersionErforderliche Gradle-Version
7.37.4
7,27.3.3
7.17,2
77
4.2.0 und höher6.7.1
4.1.0 und höher6,5 und höher
4.0.0 und höher6.1.1 und höher
3.6.0 – 3.6.45.6.4 und höher
3.5.0 – 3.5.45.4.1 und höher
3.4.0 – 3.4.35.1.1 und höher
3.3.0 – 3.3.34.10.1 und höher
3.2.0 – 3.2.14.6+
3.1.0 und höher4.4 und höher
3.0.0 und höher4.1 und höher
2.3.0 und höher3.3 und höher
2.1.3 – 2.2.32.14.1 – 3.5
2.0.0 bis 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

Sie können die Gradle-Version entweder über das Menü File > Project Structure > Project in Android Studio angeben oder sie über die Befehlszeile aktualisieren. Am besten verwenden Sie das Befehlszeilentool Gradle Wrapper, mit dem die gradlew-Scripts aktualisiert werden. Im folgenden Beispiel wird die Gradle-Version mit dem Gradle-Wrapper auf 8.7 festgelegt. Hinweis: Sie müssen diesen Befehl zweimal ausführen, um sowohl Gradle als auch den Gradle-Wrapper selbst zu aktualisieren. Weitere Informationen finden Sie unter Gradle-Wrapper aktualisieren.

gradle wrapper --gradle-version 8.7

In einigen Fällen kann dies jedoch fehlschlagen, z. B. wenn Sie AGP gerade aktualisiert haben und es nicht mehr der aktuellen Gradle-Version entspricht. In diesem Fall müssen Sie die Gradle-Verweisdatei in der Datei gradle/wrapper/gradle-wrapper.properties bearbeiten. Im folgenden Beispiel wird die Gradle-Version in der Datei gradle-wrapper.properties auf 8.7 festgelegt.

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

Kompatibilität zwischen Android-Gradle-Plug-in und Android Studio

Das Android Studio-Build-System basiert auf Gradle. Das Android Gradle-Plug-in (AGP) bietet mehrere Funktionen, die speziell für das Erstellen von Android-Apps entwickelt wurden. In der folgenden Tabelle ist aufgeführt, welche AGP-Version für jede Android Studio-Version erforderlich ist.

Android Studio-Version Erforderliche AGP-Version
Marienkäfer | 2024.2.1 3.2–8.7
Koala-Feature Drop | 2024.1.2 3.2–8.6
Koala | 2024.1.1 3.2–8.5
Jellyfish | 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

Ältere Versionen

Android Studio-Version Erforderliche AGP-Version
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

Informationen zu den Neuerungen im Android-Gradle-Plug-in finden Sie in den Versionshinweisen zum Android-Gradle-Plug-in.

Mindestversionen von Tools für Android-API-Level

Es gibt Mindestversionen von Android Studio und AGP, die eine bestimmte API-Ebene unterstützen. Wenn Sie eine niedrigere Version von Android Studio oder AGP verwenden, als für die targetSdk oder compileSdk Ihres Projekts erforderlich ist, kann das zu unerwarteten Problemen führen. Wir empfehlen, die neueste Vorabversion von Android Studio und AGP zu verwenden, wenn Sie an Projekten arbeiten, die auf Vorabversionen des Android-Betriebssystems ausgerichtet sind. Sie können Vorabversionen von Android Studio neben einer stabilen Version installieren.

Die Mindestversionen von Android Studio und AGP sind:

API-Ebene Mindestversion von Android Studio Mindestversion von AGP
Baklava-Vorabversion Meerkat | 2024.3.1 8.9.0
35 Koala-Feature Drop | 2024.2.1 8.6.0
34 Hedgehog | 2023.1.1 8.1.1
33 Flamingo | 2022.2.1 7,2

Änderungen bei der Versionierung (November 2020)

Wir aktualisieren die Versionsnummer des Android Gradle-Plug-ins (AGP), damit sie besser mit dem zugrunde liegenden Gradle-Build-Tool übereinstimmt.

Hier sind die wichtigsten Änderungen:

  • Für AGP wird jetzt die semantische Versionierung verwendet und funktionsgefährdende Änderungen werden auf Hauptversionen ausgerichtet.

  • Es wird pro Jahr eine Hauptversion von AGP veröffentlicht, die mit dem Hauptrelease von Gradle übereinstimmt.

  • Die Version nach AGP 4.2 ist Version 7.0 und erfordert ein Upgrade auf Gradle 7.x. Für jede Hauptversion von AGP ist ein Upgrade der Hauptversion des zugrunde liegenden Gradle-Tools erforderlich.

  • APIs werden ungefähr ein Jahr im Voraus eingestellt. Gleichzeitig werden Ersatzfunktionen verfügbar gemacht. Eingestellte APIs werden etwa ein Jahr später beim nächsten größeren Update entfernt.

Kompatibilität

Das Android Gradle-Plug-in 8.6 unterstützt maximal API-Level 34. Weitere Informationen zur Kompatibilität:

Mindestversion Standardversio Hinweise
„Gradle“ 8.9 8.9 Weitere Informationen finden Sie unter Gradle aktualisieren.
SDK-Build-Tools 34.0.0 34.0.0 Installieren oder konfigurieren Sie die SDK-Build-Tools.
NDK 27.0.12077973 Installieren oder konfigurieren Sie eine andere Version des NDK.“
JDK 17 17 „Weitere Informationen finden Sie unter JDK-Version festlegen.“

Änderung am Lint-Verhalten

Ab dem Android Gradle-Plug-in 8.7.0-alpha08 wird bei der Ausführung von lint mit Gradle eine LintError ausgegeben, wenn die Lint-Analyseaufgabe eine Ausnahme auslöst. Durch diese Änderung wird verhindert, dass seltene Fehler im Build-Cache zwischengespeichert werden.

Leider führt diese Änderung dazu, dass Builds für Projekte mit echten LintError-Instanzen in ihren Lint-Baseline-Dateien nicht mehr funktionieren. Die Fehlermeldung enthält Informationen dazu, welche Lint-Prüfungen das Problem verursachen. In einigen Fällen kann das Problem durch Aktualisieren der entsprechenden Bibliothek abhängigkeit behoben werden. Andernfalls können Sie die fehlerhafte Lint-Prüfung deaktivieren, bis der Bibliotheksautor das Problem behoben hat.

Behobene Probleme

Android Gradle Plugin 8.7.0

Behobene Probleme
Android Gradle Plugin
AGP muss angeben, dass es API 35 unterstützt, die bald veröffentlicht wird.
AGP 8.5: Es werden viel mehr „mergeDebugResources“-Aufgaben ausgeführt, was Builds verlangsamt
Ndk 27 zum Standard-NDK in AGP machen
AGP muss angeben, dass es API 35 unterstützt, die bald veröffentlicht wird.
AGP muss angeben, dass es API 35 unterstützt, die bald veröffentlicht wird.
Ausführen von Android lint fehlgeschlagen: NoSuchFileException
BuildType#initWith kopiert den Block für die Nachbearbeitung, die ProGuard-Konfiguration wird jedoch nicht angewendet
Zusammenführen von Tags vom Typ „foregroundServiceType“ nicht möglich
Ausführen von Android lint fehlgeschlagen: NoSuchFileException
Fussel
Lint sollte nach ungültigen Objekten suchen, die als ViewGroups verwendet werden
„android:host is missing“ für URIs mit Null-Host
KtAnalysisSessionProvider-Inkompatibilität mit Lint-Prüfungen, eingeführt in 8.7.0-alpha04
„False positive“ WrongConstant bei Verwendung von PackageManager.ResolveInfoFlags.of mit Kotlin

Android Gradle Plugin 8.7.1

Behobene Probleme
Android Gradle Plugin
agp-Dokumente enthalten viele TBD
Fussel
AGP 8.6.1: Regression – Fehler „WrongConstant“ bei der Verwendung von [Int].toLong() in einer @LongDef-Definition in Kotlin
Lint-Fehler „Es muss mindestens ein Host angegeben werden“, wenn das HTTP- oder HTTPS-Intent-Filter-Schema festgelegt wird

Android Gradle Plugin 8.7.2

Behobene Probleme
Fussel
AGP 8.7.0 – Lint-Falschmeldung „RestrictedApi“ bei NavOptionsBuilder.popUpTo
Schrumpfgerät (R8)
[R8 8.6.27] Methode wurde durch „throw null“ ersetzt
Standard-Android-ProGuard-Dateien lösen eine Warnung aus, wenn sie mit der aktuellen Version von R8 verwendet werden
MissingStartupProfileItemsDiagnostic führt dazu, dass der Gradle-Client mit einem „Out of Memory“-Fehler abstürzt, wenn die Nachricht zu groß ist

Android Gradle Plugin 8.7.3

Behobene Probleme
Fussel
Viele Warnungen zu fehlenden Analyse-API-Methoden beim Ausführen von lint
Falsch positive Lint-Prüfung: android.permission.SCHEDULE_EXACT_ALARM wird nur System-Apps gewährt