Android-Gradle-Plug-in 7.2.0 (Mai 2022)

Das Android-Gradle-Plug-in 7.2.0 ist eine Hauptversion, die eine Vielzahl neuer Funktionen und Verbesserungen enthält.

7.2.2 (August 2022)

Dieses untergeordnete Update entspricht der Veröffentlichung von Android Studio Chipmunk Patch 2 und enthält die folgenden Fehlerkorrekturen:

  • Problem 232438924: AndroidGradlePlugin-Version 7.2 unterbricht die Transform API, wenn sie zusammen mit der ASM API verwendet wird
  • Problem 231037948: AGP 7.2.0-rc01 :buildSrc:generatePrecompiledScriptPluginAccessors - shadow/bundletool/com/android/prefs/AndroidLocation$AndroidLocationException
7.2.1 (Mai 2022)

Dieses untergeordnete Update entspricht der Veröffentlichung von Android Studio Chipmunk Patch 1 und enthält die folgenden Fehlerkorrekturen:

Informationen zu den anderen Fehlerkorrekturen in dieser Version finden Sie in den Versionshinweisen zu Android Studio Chipmunk Patch 1.

Kompatibilität

Mindestversion Standardversio Hinweise
Gradle 7.3.3 7.3.3 Weitere Informationen finden Sie unter Gradle aktualisieren.
SDK-Build-Tools 30.0.3 30.0.3 Installieren oder Konfigurieren Sie die SDK-Build-Tools.
NDK 21.4.7075529 Installieren oder konfigurieren Sie eine andere Version des NDK.
JDK 11 11 Weitere Informationen finden Sie unter JDK-Version festlegen.

Jetifier-Warnung und -Prüfung in Build Analyzer

Build Analyzer zeigt jetzt eine Warnung an, wenn die gradle.properties-Datei Ihres Projekts android.enableJetifier=true enthält. Dieses Flag wurde in einer früheren Version von Android Studio eingeführt, um AndroidX für Bibliotheken zu aktivieren, die AndroidX nicht nativ unterstützen. Die meisten Bibliotheken unterstützen AndroidX jedoch nativ und das Jetifier-Flag wird in Ihrem Projekt wahrscheinlich nicht mehr benötigt. Außerdem kann das Flag zu einer langsameren Build-Leistung führen. Wenn Sie diese Warnung sehen, können Sie mit Build Analyzer prüfen, ob das Flag entfernt werden kann.

Unterstützung für Test-Fixtures

Ab Android Studio Chipmunk Beta 1 unterstützt Android Studio sowohl Android- als auch Java-Testfixtures. Weitere Informationen zur Funktion „Test-Fixtures“ und zur Verwendung in einem Java-Projekt finden Sie im Gradle-Leitfaden zur Verwendung von Test-Fixtures{:.external}.

Wenn Sie Test-Fixtures in Ihrem Android-Bibliotheksmodul aktivieren möchten, fügen Sie der Datei build.gradle auf Bibliotheksebene Folgendes hinzu:

android {
  testFixtures {
    enable true
    // enable testFixtures's android resources (disabled by default)
    // androidResources true
  }
}

Wenn Sie Ihre Bibliothek veröffentlichen, wird standardmäßig auch das AAR-Test-Fixture mit der Hauptbibliothek veröffentlicht. Die Gradle-Modul-Metadatendatei enthält Informationen, damit Gradle das richtige Artefakt verwenden kann, wenn die Komponente testFixtures angefordert wird.

Wenn Sie das Veröffentlichen des AAR-Test-Fixtures einer Bibliothek in der Release-Variante deaktivieren möchten, fügen Sie der build.gradle-Datei auf Bibliotheksebene Folgendes hinzu:

afterEvaluate {
  components.release.withVariantsFromConfiguration(
    configurations.releaseTestFixturesVariantReleaseApiPublication) { skip() }
  components.release.withVariantsFromConfiguration(
    configurations.releaseTestFixturesVariantReleaseRuntimePublication) { skip() }
}

Wenn Sie das AAR-Test-Fixture einer veröffentlichten Android-Bibliothek verwenden möchten, können Sie die Gradle-Hilfsmethode testFixtures() verwenden.

dependencies {
  testImplementation testFixtures('com.example.company:publishedLib:1.0')
}

Standardmäßig analysiert lint Test-Fixtures-Quellen. Sie können Lint so konfigurieren, dass Testfixture-Quellen ignoriert werden:

android {
  lint {
    ignoreTestFixturesSources true
  }
}

Doppelte Inhalts-Roots werden nicht unterstützt

Ab AGP 7.2 können Sie nicht mehr dasselbe Quellverzeichnis für mehrere Quellsätze verwenden. Sie können beispielsweise nicht dieselben Testquellen für Unit- und Instrumentierungstests verwenden. Weitere Informationen finden Sie unter Standardkonfigurationen für Quellsets ändern.