Mit Sammlungen den Überblick behalten
Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
Android-Gradle-Plug-in 3.1.0 (März 2018)
Für diese Version des Android-Plug-ins ist Folgendes erforderlich:
|
Mindestversion |
Standardversion |
Hinweise |
Gradle |
4.4 |
4.4 |
Weitere Informationen finden Sie unter Gradle aktualisieren. |
SDK-Build-Tools |
27.0.3 |
27.0.3 |
Installieren oder konfigurieren Sie die SDK-Build-Tools. Sie müssen keine Version für die Build-Tools mit der Eigenschaft „android.buildToolsVersion“ angeben. Das Plug-in verwendet standardmäßig die erforderliche Mindestversion. |
Neuer DEX-Compiler, D8
Standardmäßig verwendet Android Studio jetzt einen neuen DEX-Compiler namens D8. Bei der DEX-Kompilierung wird .class
-Bytecode in .dex
-Bytecode für die Android-Laufzeit (oder Dalvik für ältere Android-Versionen) umgewandelt. Im Vergleich zum vorherigen Compiler (DX) kompiliert D8 schneller und gibt kleinere DEX-Dateien aus. Die Laufzeitleistung der App ist dabei gleich oder besser.
D8 sollte Ihren alltäglichen App-Entwicklungs-Workflow nicht ändern. Sollten Sie jedoch Probleme mit dem neuen Compiler haben, melden Sie bitte einen Fehler. Sie können D8 vorübergehend deaktivieren und DX verwenden, indem Sie Folgendes in die Datei gradle.properties
Ihres Projekts einfügen:
android.enableD8=false
Für Projekte, die Java 8-Sprachfunktionen verwenden, ist das inkrementelle Desugaring standardmäßig aktiviert. Sie können sie deaktivieren, indem Sie Folgendes in der gradle.properties
-Datei Ihres Projekts angeben:
android.enableIncrementalDesugaring=false.
Vorschauversionen:Wenn Sie bereits eine Vorschauversion von D8 verwenden, beachten Sie, dass sie jetzt mit Bibliotheken kompiliert wird, die in den SDK-Build-Tools enthalten sind, nicht mit dem JDK.
Wenn Sie also auf APIs zugreifen, die im JDK, aber nicht in den Bibliotheken der SDK-Build-Tools vorhanden sind, erhalten Sie einen Kompilierungsfehler.
Geändertes Verhalten
-
Wenn Sie mehrere APKs erstellen, die jeweils auf eine andere ABI ausgerichtet sind, werden mit
nicht mehr standardmäßig APKs für die folgenden ABIs generiert:
mips
, mips64
und armeabi
.
Wenn Sie APKs erstellen möchten, die auf diese ABIs ausgerichtet sind, müssen Sie NDK r16b oder niedriger verwenden und die ABIs in Ihrer Datei build.gradle
angeben, wie unten gezeigt:
splits {
abi {
include 'armeabi', 'mips', 'mips64'
...
}
}
splits {
abi {
include("armeabi", "mips", "mips64")
...
}
}
-
Im Build-Cache des Android-Plug-ins werden jetzt Cache-Einträge entfernt, die älter als 30 Tage sind.
-
Wenn Sie "auto"
an resConfig
übergeben, werden keine String-Ressourcen mehr automatisch für die Aufnahme in Ihr APK ausgewählt.
Wenn Sie "auto"
weiterhin verwenden, packt das Plug-in alle String-Ressourcen, die Ihre App und ihre Abhängigkeiten bereitstellen. Stattdessen sollten Sie jede Sprache angeben, die das Plug-in in Ihr APK packen soll.
-
Da lokale Module nicht vom Test-APK Ihrer App abhängen können, wird durch das Hinzufügen von Abhängigkeiten zu Ihren instrumentierten Tests mit der Konfiguration androidTestApi
anstelle von androidTestImplementation
in Gradle die folgende Warnung ausgegeben:
WARNING: Configuration 'androidTestApi' is obsolete
and has been replaced with 'androidTestImplementation'
WARNING: Configuration 'androidTestApi' is obsolete
and has been replaced with 'androidTestImplementation'
Fehlerkorrekturen
- Ein Problem wurde behoben, bei dem Android Studio Abhängigkeiten in zusammengesetzten Builds nicht richtig erkennt.
- Es wurde ein Problem behoben, bei dem beim Laden des Android-Plug-ins mehrmals in einem einzelnen Build ein Projektsynchronisierungsfehler auftrat, z. B. wenn mehrere Unterprojekte das Android-Plug-in jeweils in ihrem Buildscript-Classpath enthalten.
Alle Inhalte und Codebeispiele auf dieser Seite unterliegen den Lizenzen wie im Abschnitt Inhaltslizenz beschrieben. Java und OpenJDK sind Marken oder eingetragene Marken von Oracle und/oder seinen Tochtergesellschaften.
Zuletzt aktualisiert: 2025-09-03 (UTC).
[[["Leicht verständlich","easyToUnderstand","thumb-up"],["Mein Problem wurde gelöst","solvedMyProblem","thumb-up"],["Sonstiges","otherUp","thumb-up"]],[["Benötigte Informationen nicht gefunden","missingTheInformationINeed","thumb-down"],["Zu umständlich/zu viele Schritte","tooComplicatedTooManySteps","thumb-down"],["Nicht mehr aktuell","outOfDate","thumb-down"],["Problem mit der Übersetzung","translationIssue","thumb-down"],["Problem mit Beispielen/Code","samplesCodeIssue","thumb-down"],["Sonstiges","otherDown","thumb-down"]],["Zuletzt aktualisiert: 2025-09-03 (UTC)."],[],[],null,["\u003cbr /\u003e\n\nAndroid Gradle Plugin 3.1.0 (March 2018)\n\nThis version of the Android plugin requires the following:\n\n| | Minimum version | Default version | Notes |\n|----------------:|:---------------:|:---------------:|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:|\n| Gradle | 4.4 | 4.4 | To learn more, see [updating Gradle](/build/releases/gradle-plugin?buildsystem=ndk-build#updating-gradle). |\n| SDK Build Tools | 27.0.3 | 27.0.3 | [Install](/studio/intro/update#sdk-manager) or [configure](/tools/releases/build-tools) SDK Build Tools. Keep in mind, you no longer need to specify a version for the build tools using the android.buildToolsVersion property---the plugin uses the minimum required version by default. |\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\nNew DEX compiler, D8\n\nBy default, Android Studio now uses a new DEX compiler called D8. DEX\ncompilation is the process of transforming `.class` bytecode into\n`.dex` bytecode for the Android Runtime (or Dalvik, for older\nversions of Android). Compared to the previous compiler, called DX, D8\ncompiles faster and outputs smaller DEX files, all while having the same or\nbetter app runtime performance.\n\nD8 shouldn't change your day-to-day app development workflow. However, if\nyou experience any issues related to the new compiler, please\n[report a bug](/studio/report-bugs). You can temporarily\ndisable D8 and use DX by including the following in your project's\n`gradle.properties` file: \n\n android.enableD8=false\n \nFor projects that\n[use Java 8 language features](/studio/write/java8-support),\nincremental desugaring is enabled by default. You can disable it by\nspecifying the following in your project's `gradle.properties` file: \n\n android.enableIncrementalDesugaring=false.\n \n\n**Preview users:** If you're already using a preview version of D8, note\nthat it now compiles against libraries included in the\n[SDK build tools](/studio/releases/build-tools)---not the JDK.\nSo, if you are accessing APIs that exist in the JDK but not in the SDK build\ntools libraries, you get a compile error.\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\nBehavior changes\n\n- When building multiple APKs that each target a different ABI, the\n no longer generates APKs for the following ABIs by default:\n `mips`, `mips64`, and `armeabi`.\n\n If you want to build APKs that target these ABIs, you must use\n [NDK r16b or lower](/ndk/downloads/revision_history) and\n specify the ABIs in your `build.gradle` file, as shown below: \n\n ```groovy\n splits {\n abi {\n include 'armeabi', 'mips', 'mips64'\n ...\n }\n }\n \n ``` \n\n ```kotlin\n splits {\n abi {\n include(\"armeabi\", \"mips\", \"mips64\")\n ...\n }\n }\n \n ```\n- The Android plugin's [build\n cache](/studio/build/build-cache) now evicts cache entries that are older than 30 days.\n\n- Passing `\"auto\"` to\n [`resConfig`](https://google.github.io/android-gradle-dsl/current/com.android.build.gradle.internal.dsl.ProductFlavor.html#com.android.build.gradle.internal.dsl.ProductFlavor:resConfig(java.lang.String))\n no longer automatically picks string resources to package into your APK.\n If you continue to use `\"auto\"`, the plugin packages all string\n resources your app and its dependencies provide. So, you should instead\n specify each locale that you want the plugin to package into your APK.\n\n- Because local modules can't depend on your app's test APK, adding\n dependencies to your instrumented tests using the\n `androidTestApi` configuration, instead of\n `androidTestImplementation`, causes Gradle to issue the\n following warning:\n\n ```groovy\n WARNING: Configuration 'androidTestApi' is obsolete\n and has been replaced with 'androidTestImplementation'\n \n ``` \n\n ```kotlin\n WARNING: Configuration 'androidTestApi' is obsolete\n and has been replaced with 'androidTestImplementation'\n \n ```\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\nFixes\n\n- Fixes an issue where Android Studio doesn't properly recognize dependencies in composite builds.\n- Fixes an issue where you get a project sync error when loading the Android plugin multiple times in a single build--for example, when multiple subprojects each include the Android plugin in their buildscript classpath.\n\n\u003cbr /\u003e"]]