Wenn Ihr Capacitor Das Plugin funktioniert möglicherweise nicht mehr, nachdem Sie zu Android Gradle Plugin 9 (AGP 9) aufgestiegen sind, da Sie wahrscheinlich ein kleines aber kritisches Gradle-Konfigurationsproblem treffen.
Dieser Beitrag richtet sich speziell auf häufige Suchabsichten wie:
- Capacitor Plugin Buildfehler AGP 9
- Plugin Buildfehler Android Gradle Plugin 9
proguard-android.txtnicht gefunden- AGP 9
getDefaultProguardFilefehler - Capacitor Android-Build fehlgeschlagen nach AGP-Upgrade
Die kurze Version:
proguard-android.txtist nicht mehr die sichere Standard-Basis, auf die in AGP 9-Plugin-Builds verwiesen werden kann.- Switch zu
proguard-android-optimize.txt. - Wiederherstellen und überprüfen.
Die längere Version ist auch wichtig, insbesondere wenn Sie viele Plugins oder große Capacitor Arbeitsumgebungen unterhalten. In diesem Artikel behandeln wir:
- Was Android und AGP in der Build-Kette sind
- Was Capacitor ist und wie Plugin-Builds funktionieren
- Was Capgo kontext:HTML-Textfragment aus einem längeren Capgo-UI-String (Elternschlüssel `submitting_a_pr_to_capgo`). Seite/Bereich: Capgo-Marketing-Website. Rolle: Website-Text. Gesehen in: Seite contributing.astro. Bewahren Sie Capgo-Produkt- und -Marken- und Entwicklertrems genau. Nachrichtenschlüssel `submitting_a_pr_to_capgo` (Submitting A Pr To Capgo).
- Die genaue Änderung von AGP 9, die alte Plugin-Vorlagen bricht
- Eine sichere Migrationsstrategie für einen Repository oder viele Repository
Was ist Android in diesem Kontext?
Android ist sowohl ein Betriebssystem als auch ein Build-Ökosystem. Wenn Sie ein Capacitor-App oder -Plugin auf Android bereitstellen, geht Ihr Projekt durch:
- Gradle als Build-System.
- Android-Gradle-Plugin (AGP) als Android-spezifische Gradle-Integration.
- Die Android-SDK-Toolkette für das Paketieren, Komprimieren, Überprüfen und Erzeugen von
.aar,.apk, oder.aabAusgaben.
Wenn sich die AGP-Versionen ändern, können auch einige Standards und interne Dateien geändert werden. Eine Plugin-Konfiguration, die für AGP 8 funktioniert hat, kann bei AGP 9 fehlschlagen, wenn sie auf eine entfernte oder veraltete Basis verweist.
Was ist Capacitor?
Capacitor ein plattformübergreifender Laufzeitumgebung, die Ihnen ermöglicht, iOS/Android-Anwendungen mit Web-code (TypeScript, JavaScript, HTML, CSS) zu erstellen, während Sie noch native APIs aufrufen.
Capacitor-Anwendungen umfassen normalerweise:
- Eine Web-Schicht (Ihre UI und Geschäftslogik)
- Native-Shell
ios/,android/) - Plugins, die native Funktionen für JavaScript bereitstellen
Jedes Plugin hat seine eigene native Build-Konfiguration. Auf Android bedeutet dies, dass jedes Plugin eine Datei enthält, die AGP parsen und korrekt kompilieren muss. android/build.gradle Wenn die Gradle-Einstellungen eines Plugins veraltet sind, kann die gesamte App-Build fehlschlagen, selbst wenn Ihre Web-__CAPGO_KEEP_0__ korrekt ist.
Was ist code?
What is Capgo?
Capgo bietet Werkzeuge rund um die Capacitor-Lieferung und -Betriebsabläufe:
- Live-Updates für Änderungen im Web-Bundle
- Plugin-Ökosystem und native Feature-Pakete
- CI/CD-gerechte Update-Workflows für Capacitor-Teams
Selbst bei Live-Updates ist die native Build-Stabilität unverhandelbar. Sie benötigen immer noch saubere Android-Builds für:
- App Store / Play Store-Releases
- Native-Plugin-Updates
- Plattform SDK-Migrationen
- Team-Onboarding und CI-Geschwindigkeit
Das ist der Grund, warum AGP 9-Kompatibilitätsfixes wichtig sind: Sie halten Ihre Plugin-Schicht vertrauenswürdig, damit Lieferpipelines vorhersehbar bleiben.
Why AGP 9 ältere Plugin-Konfigurationen bricht
Viele Plugin-Vorlagen verwendeten historisch:
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
In AGP 9-Einstellungen kann diese Legacy-Baseline-Referenz fehlschlagen, weil der alte Datei nicht mehr garantiert ist an der von älteren Vorlagen/Konfigurationen erwarteten Position.
Typische Symptome umfassen Gradle-Fehler während assemble, lint, oder build Phasen, oft auf fehlende ProGuard-Baseline-Ressourcen oder ungültige Standarddateverweise hinweisend.
Rasche Hintergrundinformationen: ProGuard, R8 und Baseline-Dateien
- R8 ist der moderne code-Shrinker/Optimierer in Android-Builds.
proguard-rules.probeschreibt Ihre Projekt/Plugin-Custom-Keep-Regeln.getDefaultProguardFile(...)injects eine Android-bereitgestellte Basis.
Wenn Sie auf Folgendes verweisen:
proguard-android.txt→ legacy, minimal Basisproguard-android-optimize.txt→ modern optimierte Basis (empfohlener Standard in aktuellen Konfigurationen)
Für die Kompatibilität mit AGP 9 ist der Wechsel zu proguard-android-optimize.txt ist die praktische Lösung.
Die einezeilige Lösung
Aktualisieren Sie die Plugin- und App-Modul-Gradle-Dateien:
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
Mindestens sollten Sie folgende Überprüfungen durchführen:
android/build.gradlein jeder Plugin-Instanzexample-app/android/app/build.gradlein Plugin-Repositories- Jeder Generator/Template-Datei, die neue Plugin-Gradle-Konfigurationen erstellt
Migrationshinweis für ein Plugin
1. Finden Sie die alte Referenz
rg -n "proguard-android\\.txt" android example-app
2. Ersetzen Sie es
perl -pi -e "s/proguard-android\\.txt/proguard-android-optimize.txt/g" \
android/build.gradle example-app/android/app/build.gradle
3. Überprüfen Sie mit Bun
bun run verify:android
Wenn Ihr Plugin vollständige Verifizierungs-Skripte enthält, führen Sie Folgendes aus:
bun run verify
Alle Plugin-Repositories aktualisieren
Wenn Sie viele Plugin-Repositorys in einem Workspace verwalten, automatisieren Sie es:
rg -l "proguard-android\\.txt" capacitor-* \
--glob '!**/node_modules/**' \
--glob '!**/.gradle/**' \
--glob '!**/build/**' \
| xargs perl -pi -e "s/proguard-android\\.txt/proguard-android-optimize.txt/g"
Validieren Sie dann, dass kein verfolgtes Plugin-Quellcode noch die alte Datei verwendet:
for d in capacitor-*; do
[ -d "$d/.git" ] || continue
git -C "$d" grep -n "proguard-android\\.txt" -- || true
done
Keine Übereinstimmungen bedeuten, dass die alte Referenz aus dem verfolgten Plugin-Dateien verschwunden ist.
Capgo-Status
Wir haben diese Migration in allen offiziellen Capgo Capacitor-Plugin-Repositorys und -Vorlagen durchgeführt:
- Plugin-Android-Module verweisen nun auf
proguard-android-optimize.txt - Beispiel-Android-Anwendungen für Plugins wurden ebenfalls aktualisiert
- Plugin-Vorlagen für die Erstellung wurden aktualisiert, so dass neue Plugins standardmäßig AGP 9-sicher sind
Dies verhindert eine häufige Klasse von Upgradefehlern von AGP 9, bevor sie CI treffen.
Warum dies wichtig ist, auch wenn Ihre Build heute noch erfolgreich ist
Sie sehen möglicherweise keine Fehler sofort, wenn:
- Ihr CI-Cache die Probleme noch verdeckt
- Sie haben gemischte AGP-Versionen in Projekten
- Nur einige Module werden in der lokalen Entwicklung neu erstellt
Aber es gibt schließlich saubere Builds, neue Umgebungen oder aktualisierte Runner, die es offenlegen. Die Migration jetzt entfernt versteckte Instabilität.
Fehlerbehebung, wenn Builds nach dem Austausch noch scheitern
Überprüfen Sie diese Punkte:
-
Jedes Modul ist gepatcht. Betrachten Sie Plugin-Module, Anwendungs-Module, Beispiele und Vorlagen-Assets.
-
Es gibt keine zweite Referenz in gemeinsamen Skripten. Suchen Sie in gesamten Repositorien (einschließlich benutzerdefinierter Gradle-Skripte).
-
Cache sind sauber. Führen Sie
./gradlew cleanund neu aufbauen. -
AGP / Gradle / JDK-Versionen sind synchronisiert. Verwenden Sie kombinierungen, die von der Android-Dokumentation für Ihre AGP-Version unterstützt werden.
-
CI verwendet die gleichen Versionen wie lokale. Pinnen Sie JDK- und Gradle-Wrapper-Versionen in CI, um Umgebungsdrift zu vermeiden.
-
Sie patchen nicht nur
node_modules. Fixieren Sie die Quelle des verfolgten Plugins, nicht die transienten Abhängigkeitsverzeichnisse.
SEO FAQ: AGP 9 Capacitor Plugin-Baufehler
Wie behebe ich proguard-android.txt nicht gefunden in AGP 9?
Ersetzen Sie:
getDefaultProguardFile('proguard-android.txt')
Mit:
getDefaultProguardFile('proguard-android-optimize.txt')
Dann führen Sie einen sauberen Neubau durch.
Warum scheitert mein Capacitor-Plugin nach dem Upgrade auf Android Gradle Plugin 9?
Die meisten Fehler stammen aus der veralteten Gradle-Konfiguration im Plugin. android/build.gradle Dateien, die sich noch auf proguard-android.txtverweisen. proguard-android-optimize.txt.
What is the fastest AGP 9 migration path for many Capacitor plugins?
Was ist der schnellste Weg zur Migration von vielen __CAPGO_KEEP_0__-Plugins nach AGP 9? git grep Verwenden Sie einen workspace-weiten Such- und Ersetzungs-Befehl, dann validieren Sie mit bun run verify:android und führen Sie
Is this only a Capacitor issue?
Handelt es sich nur um einen __CAPGO_KEEP_0__-Probleme?
Nein. Jedes Android-Modul (Anwendung oder Bibliothek), das veraltete ProGuard-Baselinereferenzen verwendet, kann ähnliche AGP 9-Buildfehler erleiden. Dies ist besonders in Plugin-Ökosystemen sichtbar, da viele Repositories alte Vorlagen teilen.
Welche Schlüsselwörter sind für diese Migration relevant?
- Wenn Sie dies in internen Runbooks oder Unterstützungsseiten dokumentieren, sollten Sie Begriffe wie:
- Android-Gradle-Plugin-9-ProGuard-Datei fehlt
- Capacitor-Plugin Android-Build fehlgeschlagen
proguard-android.txtErsetzungproguard-android-optimize.txtMigration
Verwandte Links
- Android-Entwickler: Deine App erstellen
- Android-Gradle-Plugin: Release Notes
- Android code-Shrinking: R8 und Regeln
- Gradle-Docs: Grundlagen von Build-Tools
- Capacitor Dokumentation: Offizielle Dokumentation
- Capgo Dokumentation: Auto-Update-Dokumentation
Zusammenfassung
Diese AGP 9-Problematik ist einfach, aber leicht zu übersehen in Arbeitsumgebungen mit mehreren Plugins. Sobald Sie __CAPGO_KEEP_0__ durchall über relevanten Bereichen ersetzen, werden Android-Builds wieder vorhersehbar. proguard-android.txt Wenn Sie __CAPGO_KEEP_0__-Plugins verwenden, ist diese Migration bereits in offiziellen Repositorien angewendet, sodass Sie mit weniger Überraschungen aufsteigen können. proguard-android-optimize.txt Fortsetzen Sie mit der __CAPGO_KEEP_0__-Plugin-AGP-9-Build-Fehler-Beseitigung
Wenn Sie Capgo verwenden
Wenn Sie Capacitor verwenden
Wenn Sie __CAPGO_KEEP_0__ verwenden Capacitor Plugin AGP 9 Build Error Fix um die CI/CD-Automatisierung zu planen, verbinden Sie es mit Capgo CI/CD zur Produktworkflow in Capgo CI/CD Capgo Native Builds zur Produktworkflow in Capgo Native Builds Capgo Integrations zur Produktworkflow in Capgo Integrations CI/CD-Integration zur Implementierungsdetail in CI/CD-Integration, und GitHub Actions Integration zur Implementierungsdetail in GitHub Actions Integration