Kotlin DSL ist die Standardeinstellung für die Build-Konfiguration
In neuen Projekten wird jetzt standardmäßig die Kotlin-DSL (build.gradle.kts) für die Build-Konfiguration verwendet. Das bietet eine bessere Bearbeitung als die Groovy DSL (build.gradle) mit Syntaxhervorhebung, Codevervollständigung und Navigation zu Deklarationen. Wenn Sie AGP 8.1 und die Kotlin DSL für die Build-Konfiguration verwenden, sollten Sie Gradle 8.1 verwenden, um die bestmögliche Leistung zu erzielen. Weitere Informationen
Automatische App-spezifische Sprachunterstützung
Ab Android Studio Giraffe Canary 7 und AGP 8.1.0-alpha07 können Sie Ihre App so konfigurieren, dass sie Spracheinstellungen pro App automatisch unterstützt. Basierend auf Ihren Projektressourcen generiert das Android-Gradle-Plug-in die Datei LocaleConfig und fügt einen Verweis darauf in die endgültige Manifestdatei ein. Sie müssen dies also nicht mehr manuell tun. AGP verwendet die Ressourcen in den res-Ordnern Ihrer App-Module und alle Abhängigkeiten von Bibliotheksmodulen, um die in die Datei LocaleConfig aufzunehmenden Gebietsschemas zu bestimmen.
Die automatische Sprachfunktion pro App wird nur für Apps unterstützt, die unter Android 13 (API‑Level 33) oder höher ausgeführt werden. Wenn Sie das Feature verwenden möchten, müssen Sie compileSdkVersion auf 33 oder höher festlegen. Wenn Sie die Sprachpräferenzen für einzelne Apps für frühere Android-Versionen konfigurieren möchten, müssen Sie weiterhin die APIs und die Sprachauswahl in der App verwenden.
Wenn Sie die automatische Sprachunterstützung pro App aktivieren möchten, geben Sie ein Standardschema an:
Erstellen Sie im Ordner res des App-Moduls eine neue Datei mit dem Namen resources.properties.
Legen Sie in der Datei resources.properties die Standardsprache mit dem Label unqualifiedResLocale fest. Kombinieren Sie den Sprachcode mit den optionalen Script- und Regionscodes, um die Namen der Gebietsschemas zu bilden. Trennen Sie die einzelnen Codes durch einen Bindestrich:
Sprache: Verwenden Sie den zwei- oder dreistelligen ISO 639-1-Code.
Schriftsystem (optional): Verwenden Sie den ISO 15924-Code.
Beispiel: Ihre Standardsprache ist amerikanisches Englisch.
unqualifiedResLocale=en-US
AGP fügt dieser Standardsprache und allen von Ihnen angegebenen alternativen Sprachen mithilfe von values-*-Verzeichnissen im Ordner res die automatisch generierte Datei LocaleConfig hinzu.
Die automatische Unterstützung von Sprachen pro App ist standardmäßig deaktiviert. Wenn Sie die Funktion aktivieren möchten, verwenden Sie die Einstellung generateLocaleConfig im Block androidResources {} der build.gradle.kts-Datei auf Modulebene (build.gradle-Datei, wenn Sie Groovy verwenden):
Ab AGP 8.1.0-alpha04 enthält Android Lint Bytecode, der auf JVM 17 ausgerichtet ist. Wenn Sie benutzerdefinierte Lint-Prüfungen schreiben, müssen Sie mit JDK 17 oder höher kompilieren und jvmTarget = '17' in Ihren Kotlin-Compileroptionen angeben.
Einstellung für die Komprimierung nativer Bibliotheken in DSL verschoben
Ab AGP 8.1.0-alpha10 wird eine Warnung angezeigt, wenn Sie die Komprimierung nativer Bibliotheken nicht mit der DSL anstelle des Manifests konfigurieren. In der folgenden Anleitung wird beschrieben, wie Sie Ihre Konfiguration für die Verwendung der DSL aktualisieren. Wenn Sie Hilfe bei diesen Aktualisierungen benötigen, verwenden Sie den AGP Upgrade Assistant (Tools > AGP Upgrade Assistant).
Wenn Sie unkomprimierte native Bibliotheken verwenden möchten, entfernen Sie das Attribut android::extractNativeLibs aus dem Manifest und fügen Sie der Datei build.gradle.kts auf Modulebene (build.gradle-Datei, wenn Sie Groovy verwenden) den folgenden Code hinzu:
Wenn Sie diese Option aktivieren, ohne Signierungskonfigurationen anzugeben, verwendet AGP die standardmäßige Debug-Signierungskonfiguration, wenn ein profilierbarer oder debugfähiger Build ausgeführt wird. Dieses Flag ist standardmäßig deaktiviert, damit Build-Autoren spezifische Profilsignierungskonfigurationen deklarieren.
android.experimental.library.desugarAndroidTest
AGP 8.0
false
Mit diesem Flag können Bibliotheksentwickler das Desugaring von Core-Bibliotheken für Test-APKs aktivieren, ohne die erstellte AAR zu beeinträchtigen, z. B. durch Linting.
Wir planen, dieses Verhalten in Zukunft in der Variant API zu unterstützen.
Wenn diese Option aktiviert ist, können Nutzer mit Gradle Managed Devices einen benutzerdefinierten Gerätetyp definieren, der von einem Plug-in bereitgestellt werden kann. Dieses Flag muss aktiviert sein, wenn Sie das Firebase Test Lab-Plug-in verwenden möchten.
android.lint.printStackTrace
AGP 8.0
false
Wenn diese Option aktiviert ist, gibt Android Lint einen Stacktrace aus, wenn es abstürzt. Dieses Flag hat dieselben Funktionen wie die Umgebungsvariable LINT_PRINT_STACKTRACE.
Gibt die maximale Anzahl von gleichzeitigen Gradle-verwalteten Geräten (AVDs) an, die zu einem bestimmten Zeitpunkt aktiv sein können. Wenn der Wert 0 oder negativ ist, gibt es keine maximale Anzahl von Geräten.
AndroidLintAnalysisTask (:lintAnalyzeExternalRelease) has a cache miss because `proguard.txt` has changed (AndroidLintAnalysisTask (:lintAnalyzeExternalRelease) hat einen Cache-Fehler, weil sich „proguard.txt“ geändert hat)
Fehler: „Enable KSP and use the KSP processor for this dependency instead“ (KSP aktivieren und stattdessen den KSP-Prozessor für diese Abhängigkeit verwenden) führt nur zu einer Website
[AGP 8.1.0] ./gradlew test schlägt mit „Unable to find manifest output“ fehl, wenn sowohl „splits.abi.isEnable“ als auch „testOptions.unitTests.isIncludeAndroidResources“ auf „true“ gesetzt sind.
R8 schlägt mit „Undefined value encountered during compilation“ (Beim Kompilieren wurde ein undefinierter Wert gefunden) für play-services-measurement-21.3.0-runtime.jar fehl
[AGP 8.1.0] ./gradlew test schlägt mit „Unable to find manifest output“ fehl, wenn sowohl „splits.abi.isEnable“ als auch „testOptions.unitTests.isIncludeAndroidResources“ auf „true“ gesetzt sind.
Die Dexing-Aufgabe für die Klassen von Unterprojekten nicht ausführen, wenn sie bereits durch Artefakttransformationen dexed wurden
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-07-27 (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-07-27 (UTC)."],[],[]]