Migrationsleitfaden
Siehe den AGP 9 Migrationsleitfaden für die wichtigsten Änderungen, von denen viele inkompatibel zu AGP 8 sind.
Voraussetzungen
Wenn der Benutzer eine Aktualisierung oder Migration auf AGP 9 wünscht, überprüfe zuerst die im Projekt verwendete AGP-Version. Liegt sie unter 9, stoppe und frage den Benutzer, ob er den AGP Upgrade Assistant in Android Studio ausführen möchte, um auf die neueste stabile Version von AGP zu aktualisieren, und bestätigen lassen, wenn dies erledigt ist. Der Benutzer kann auch verlangen, dass diese Anforderung übersprungen wird; in diesem Fall solltest du die Version von AGP im Rahmen der AGP 9 Migration auf die neueste stabile Version aktualisieren. Siehe den AGP 9 Migrationsleitfaden für die Durchführung.
Jede AGP-Version hat ihre eigenen Kompatibilitäten mit anderen Tools wie Gradle, JDK und Kotlin. Die Versionshinweise jeder dieser Versionen enthalten eine Kompatibilitäts-Tabelle, die die Mindestversionen dieser Tools angibt.
Diese Skill nicht für KMP-Projekte verwenden, da diese nicht unterstützt werden.
Schritte
Wenn AGP bereits bei 9 oder höher ist, dann führe Folgendes durch:
Schritt 1: Abhängigkeiten aktualisieren
Wenn KSP (com.google.devtools.ksp) im Projekt verwendet wird, stelle sicher, dass es auf Version 2.3.6 oder höher ist.
Wenn Hilt im Projekt verwendet wird, stelle sicher, dass es auf Version 2.59.2 oder höher ist.
Schritt 2: Auf eingebautes Kotlin migrieren
Siehe den Leitfaden für ausführliche Informationen.
Schritt 3: Auf das neue AGP DSL migrieren
Siehe den Leitfaden für ausführliche Informationen.
Siehe auch gradle-recipes für Beispiele, wie alter Code auf Code migriert werden kann, der mit AGP 9 und dem neuen DSL kompatibel ist.
Schritt 4: kapt zu KSP oder legacy-kapt migrieren
Wenn KSP (com.google.devtools.ksp) oder kapt (org.jetbrains.kotlin.kapt) im Projekt verwendet werden, siehe KSP, kapt und legacy-kapt für detaillierte Migrationsschritte.
Schritt 5: BuildConfig
Wenn ein Android-Modul benutzerdefinierte BuildConfig-Felder enthält, siehe BuildConfig für ausführliche Informationen.
Schritt 6: gradle.properties aktualisieren
Nach der Migration überprüfe gradle.properties. Entferne die folgenden Flags:
- android.builtInKotlin
- android.newDsl
- android.uniquePackageNames
- android.enableAppCompileTimeRClass
Zusätzlich lösche alle temporären Dateien, die du erstellt hast.
Richtlinien
- Führe niemals Python-Skripte aus oder schreibe sie.
- Durchsuche den Gradle-Abhängigkeitscache nur bei der Inspektion externer Abhängigkeiten und nur als letzten Ausweg.
- Füge niemals
android.disallowKotlinSourceSets=falsezugradle.propertieshinzu. - Führe bei der Überprüfung von Änderungen nicht die
clean-Aufgabe aus. Das ist Zeitverschwendung.
Überprüfung
Überprüfe nach der Migration Folgendes:
- Gradle IDE-Sync ist erfolgreich.
./gradlew helpist erfolgreich../gradlew build --dry-runist erfolgreich.
Fehlerbehebung
Paparazzi v2.0.0-alpha04 und niedrigere Versionen haben Probleme mit AGP 9. Siehe references/paparazzi-gradle-9.md für Details.