Android-Gradle-Plug-in 3.2.0 (September 2018)
Für diese Version des Android-Plug-ins ist Folgendes erforderlich:
Mindestversion | Standardversio | Hinweise | |
---|---|---|---|
Gradle | 4,6 | 4,6 | Weitere Informationen finden Sie unter Gradle aktualisieren. |
SDK-Build-Tools | 28.0.3 | 28.0.3 | Installieren oder Konfigurieren Sie die SDK-Build-Tools. |
3.2.1 (Oktober 2018)
Mit diesem Update müssen Sie keine Version mehr für die SDK-Build-Tools angeben. Das Android-Gradle-Plug-in verwendet jetzt standardmäßig Version 28.0.3.
Neue Funktionen
-
Unterstützung für das Erstellen von Android App Bundles:Das App Bundle ist ein neues Uploadformat, das den gesamten kompilierten Code und alle Ressourcen Ihrer App enthält. Die APK-Generierung und -Signierung wird an den Google Play Store übertragen. Sie müssen nicht mehr mehrere APKs erstellen, signieren und verwalten. Nutzer erhalten kleinere Downloads, die für ihr Gerät optimiert sind. Weitere Informationen zu Android App Bundles
-
Unterstützung für verbesserte inkrementelle Build-Geschwindigkeiten bei Verwendung von Annotationsprozessoren:Die
AnnotationProcessorOptions
-DSL erweitert jetztCommandLineArgumentProvider
, sodass Sie oder der Autor des Annotationsprozessors Argumente für den Prozessor mit Annotations für inkrementelle Build-Eigenschaftstypen annotieren können. Durch die Verwendung dieser Anmerkungen werden die Richtigkeit und Leistung von inkrementellen und gecachten Clean Builds verbessert. Weitere Informationen finden Sie unter Argumente an Annotationsprozessoren übergeben. -
Migrationstool für AndroidX:Wenn Sie das Android-Gradle-Plug-in 3.2.0 mit Android 3.2 oder höher verwenden, können Sie die lokalen und Maven-Abhängigkeiten Ihres Projekts migrieren, um die neuen AndroidX-Bibliotheken zu verwenden. Wählen Sie dazu in der Menüleiste Refactor > Migrate to AndroidX aus. Wenn Sie dieses Migrationstool verwenden, werden in Ihrer
gradle.properties
-Datei auch die folgenden Flags auftrue
gesetzt:-
android.useAndroidX
:Wenn dieser Wert auftrue
festgelegt ist, verwendet das Android-Plug-in die entsprechende AndroidX-Bibliothek anstelle einer Support Library. Wenn dieses Flag nicht angegeben ist, wird es vom Plug-in standardmäßig auffalse
gesetzt. -
android.enableJetifier
:Wenn diese Option auftrue
festgelegt ist, migriert das Android-Plug-in vorhandene Drittanbieterbibliotheken automatisch zu AndroidX, indem die Binärdateien neu geschrieben werden. Wenn dieses Flag nicht angegeben ist, wird es vom Plug-in standardmäßig auffalse
gesetzt. Sie können dieses Flag nur dann auftrue
setzen, wennandroid.useAndroidX
ebenfalls auftrue
gesetzt ist. Andernfalls erhalten Sie einen Build-Fehler.Weitere Informationen finden Sie in der AndroidX-Übersicht.
-
-
Neues Tool zum Verkleinern von Code: R8: R8 ist ein neues Tool zum Verkleinern und Verschleiern von Code, das ProGuard ersetzt. Sie können die Vorabversion von R8 verwenden, indem Sie Folgendes in die
gradle.properties
-Datei Ihres Projekts einfügen:android.enableR8 = true
android.enableR8 = true
Geändertes Verhalten
-
Desugaring mit D8 ist jetzt standardmäßig aktiviert.
-
AAPT2 ist jetzt im Maven-Repository von Google verfügbar. Wenn Sie AAPT2 verwenden möchten, muss die
google()
-Abhängigkeit in Ihrerbuild.gradle
-Datei vorhanden sein, wie unten dargestellt:buildscript { repositories { google() // here jcenter() } dependencies { classpath 'com.android.tools.build:gradle:3.2.0' } } allprojects { repositories { google() // and here jcenter() }
buildscript { repositories { google() // here jcenter() } dependencies { classpath 'com.android.tools.build:gradle:3.2.0' } } allprojects { repositories { google() // and here jcenter() }
-
Die native Multidex-Funktion ist jetzt standardmäßig aktiviert. In früheren Versionen von Android Studio wurde beim Bereitstellen der Debug-Version einer App auf einem Gerät mit Android API‑Level 21 oder höher automatisch die native Multidex-Funktion aktiviert. Ganz gleich, ob Sie die App auf einem Gerät bereitstellen oder eine APK für die Veröffentlichung erstellen – das Android-Gradle-Plug-in ermöglicht jetzt nativen Multidex für alle Module, für die
minSdkVersion=21
oder höher festgelegt ist. -
Das Plugin erzwingt jetzt eine Mindestversion des Protobuf-Plugins (0.8.6), des Kotlin-Plugins (1.2.50) und des Crashlytics-Plugins (1.25.4).
-
Das Funktionsmodul-Plug-in
com.android.feature
erzwingt jetzt die Verwendung von Buchstaben, Ziffern und Unterstrichen bei der Angabe eines Modulnamens. Wenn der Name Ihres Funktionsmoduls beispielsweise Bindestriche enthält, erhalten Sie einen Build-Fehler. Dieses Verhalten entspricht dem des Plug-ins für dynamische Module.
Fehlerkorrekturen
- JavaCompile kann jetzt in Projekten mit Datenbindung im Cache gespeichert werden. (Problem 69243050)
- Bessere Kompilierungsvermeidung für Bibliotheksmodule mit Datenbindung. (Problem 77539932)
- Sie können configure-on-demand jetzt wieder aktivieren, wenn Sie es in früheren Versionen aufgrund einiger unvorhersehbarer Build-Fehler deaktiviert haben. (Problem 77910727)