Si vous avez Capacitor Après avoir mis à jour vers Android Gradle Plugin 9 (AGP 9), votre plugin a probablement commencé à rencontrer une petite mais critique erreur de configuration Gradle.
Cet article cible spécifiquement les intentions de recherche courantes comme :
- Capacitor erreur de build du plugin AGP 9
- Erreur de build du plugin AGP 9 Android
proguard-android.txtnon trouvé- AGP 9
getDefaultProguardFileerreur - Capacitor échec de la build Android après mise à jour d'AGP
La version courte :
proguard-android.txtn'est plus la référence de base sécurisée par défaut à utiliser dans les builds AGP 9 du plugin.- Switcher à
proguard-android-optimize.txt. - Refaire la build et vérifier.
La version plus longue compte également, surtout si vous gérez de nombreux plugins ou de grands Capacitor environnements de travail. Dans cet article, nous couvrons :
- Qu'est-ce que Android et AGP dans la chaîne de construction
- Qu'est-ce que Capacitor et comment les builds de plugins fonctionnent
- Qu'est-ce que Capgo context : fragment de texte HTML d'une chaîne de Capgo plus longue (clé parente `submitting_a_pr_to_capgo`). Page/zone : site Web de marketing Capgo. Rôle : phrase de site Web. Vu dans : page contributing.astro. Conservez les termes de produit et de marque Capgo et les termes de développeur exactement. Clé de message `submitting_a_pr_to_capgo` (Soumettre Un Pr À Capgo).
- est et pourquoi cela compte pour la fiabilité des mises à jour
- Le changement exact d'AGP 9 qui brise les anciens modèles de plugin
Une stratégie de migration sûre pour un référentiel ou de nombreux référentiels
Qu'est-ce que Android dans ce contexte ? is both an operating system and a build ecosystem. When you ship a Capacitor app or plugin on Android, your project goes through:
- est à la fois un système d'exploitation et un écosystème de construction. Lorsque vous envoyez une application ou un plugin __CAPGO_KEEP_0__ sur Android, votre projet passe par : Gradle comme le système de construction.
- Android Gradle Plugin (AGP) comme intégration Gradle spécifique à Android.
- L’outilchain Android SDK pour l'emballage, la réduction, la vérification de la conformité et la production de
.aar,.apk, ou.aables sorties.
Lorsque les versions d'AGP changent, certaines valeurs par défaut et des fichiers internes peuvent changer également. Une configuration de plugin qui fonctionnait pour AGP 8 peut échouer sur AGP 9 si elle pointe vers une ligne de base supprimée ou obsolète.
Qu'est-ce que Capacitor?
Capacitor is a cross-platform runtime that lets you build iOS/Android apps with web code (TypeScript, JavaScript, HTML, CSS) while still calling native APIs.
Capacitor apps usually include:
- est un runtime cross-plateforme qui vous permet de construire des applications iOS/Android avec des __CAPGO_KEEP_0__ web (TypeScript, JavaScript, HTML, CSS) tout en appelant des API natives.
- Shells natifs (
ios/,android/) - Les plugins qui exposent des fonctionnalités natives au JavaScript
Chaque plugin a sa propre configuration de construction native. Sur Android, cela signifie que chaque plugin inclut un android/build.gradle fichier que AGP doit analyser et compiler correctement.
Si les paramètres Gradle des plugins sont obsolètes, la construction de l'application entière peut échouer, même si votre code web est correct.
Qu'est-ce que Capgo?
Capgo Capacitor fournit des outils autour de la livraison et de l'exploitation de Capacitor :
- Mises à jour en temps réel pour les modifications de paquet web
- Écosystème de plugins et de packages de fonctionnalités natives
- Flux de mise à jour CI/CD pour les équipes de Capacitor
Malgré les mises à jour en temps réel, la stabilité des builds natifs n'est pas négociable. Vous avez toujours besoin de builds Android propres pour :
- Sorties sur l'App Store / Play Store
- Mises à niveau de plugins natifs
- Migrations de plateforme SDK
- Intégration de l'équipe et fiabilité de la CI
C'est pourquoi les correctifs de compatibilité AGP 9 sont importants : ils gardent votre couche de plugin fiable afin que les pipelines de livraison restent prévisibles.
Pourquoi AGP 9 brise les anciens configs de plugin
De nombreuses modèles de plugins ont historiquement utilisé :
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
Dans les configurations AGP 9, cette référence de base légendaire peut échouer car le fichier ancien n'est plus garanti dans la localisation attendue par les anciens modèles/configs.
Les symptômes typiques incluent des erreurs Gradle pendant les assemble, lintou build phases, souvent pointant vers des ressources de ProGuard manquantes ou des références de fichiers par défaut invalides.
Contexte rapide : ProGuard, R8 et fichiers de base
- R8 is the modern code shrinker/optimizer in Android builds.
proguard-rules.prosont vos règles de conservation personnalisées pour le projet/plugin.getDefaultProguardFile(...)injecte un fichier de base fourni par Android.
Lorsque vous référez :
proguard-android.txt-> base de base légère (ancienne)proguard-android-optimize.txt-> base de base optimisée (recommandée par défaut dans les configurations actuelles)
Pour une compatibilité avec AGP 9, passer à proguard-android-optimize.txt est la solution pratique.
La solution de correction en une ligne
Mettez à jour les fichiers Gradle du plugin et du module d'application :
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
Vérifiez au minimum :
android/build.gradledans chaque pluginexample-app/android/app/build.gradledans les dépôts de plugins- Tous les fichiers de générateur/modèle qui créent de nouvelles configurations Gradle de plugin
Guide de migration pour un plugin
1. Trouvez la référence ancienne
rg -n "proguard-android\\.txt" android example-app
2. Remplacez-la
perl -pi -e "s/proguard-android\\.txt/proguard-android-optimize.txt/g" \
android/build.gradle example-app/android/app/build.gradle
3. Vérifiez avec Bun
bun run verify:android
Si votre plugin dispose de scripts de vérification complets, exécutez :
bun run verify
Mise à jour en bloc de tous les dépôts de plugins
Si vous gérez de nombreux dépôts de plugins dans un même espace de travail, automatissez-le :
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"
Vérifiez ensuite que aucune source de plugin suivie n'utilise toujours le fichier ancien :
for d in capacitor-*; do
[ -d "$d/.git" ] || continue
git -C "$d" grep -n "proguard-android\\.txt" -- || true
done
No matches signifie que la référence de base ancienne est disparue des fichiers de plugin suivis.
Capgo statut de déploiement
Nous avons effectué cette migration dans tous les dépôtoires et modèles de plugin officiels Capgo Capacitor :
- Les modules Android des plugins référencent désormais
proguard-android-optimize.txt - Les applications Android d'exemple des plugins ont également été mises à jour
- Les modèles de création de plugins ont été mis à jour afin que les nouveaux plugins soient par défaut AGP 9-sûrs
Cela empêche une classe courante de problèmes de mise à niveau AGP 9 avant qu'ils ne rencontrent la CI.
Pourquoi cela est-il important même si votre build passe aujourd'hui
Vous ne voyez pas les erreurs immédiatement si :
- Votre cache CI masque toujours l'issue
- Vous avez des versions AGP mixtes dans les projets
- Seuls certains modules sont reconstruits en dev local
Mais finalement, les builds propres, les environnements nouveaux ou les exécutants mis à jour révèlent cela. Effectuer la migration maintenant supprime l'instabilité cachée.
Résoudre les problèmes si les builds échouent encore après la remplacement
Vérifiez ces points :
-
Tout module est patché. Regardez les modules de plugin, les modules d'application, les exemples et les actifs de modèle.
-
Il n'y a pas de deuxième référence dans les scripts partagés. Recherchez les dépôtoirs entiers (y compris les scripts Gradle personnalisés).
-
Les caches sont propres. Exécutez et reconstruisez.
./gradlew cleanLes versions AGP / Gradle / JDK sont alignées. Utilisez les combinaisons supportées par la documentation Android pour votre version AGP. -
Le CI utilise les mêmes versions que locales. Fixez les versions JDK et wrapper Gradle dans le CI pour éviter la dérive de l'environnement.
-
Vous ne patchez que . Fixez la source de plugin suivie, pas les répertoires de dépendances de transfert.
-
FAQ SEO : erreurs de build de plugin AGP 9 __CAPGO_KEEP_0__
node_modulesTroubleshooting if builds still fail after the replacement
SEO FAQ: AGP 9 Capacitor plugin build errors
Comment puis-je résoudre proguard-android.txt n'est pas trouvé dans AGP 9 ?
Remplacez :
getDefaultProguardFile('proguard-android.txt')
Par :
getDefaultProguardFile('proguard-android-optimize.txt')
Effectuez ensuite une reconstruction propre.
Pourquoi ma Capacitor plugin de construction échoue-t-elle après la mise à niveau vers Android Gradle Plugin 9 ?
La plupart des échecs proviennent de configurations Gradle légacière dans les fichiers de plugin android/build.gradle qui référencent encore proguard-android.txt. Les projets AGP 9 doivent utiliser proguard-android-optimize.txt.
Quel est le chemin de migration AGP 9 le plus rapide pour de nombreux Capacitor plugins ?
Utilisez une commande de recherche et de remplacement à l'échelle de l'espace de travail, puis validez avec git grep et exécutez bun run verify:android Les plugins représentatifs.
Est-ce que c'est uniquement un problème de Capacitor ?
Non. Toute module Android (application ou bibliothèque) utilisant des références de ligne de base ProGuard obsolètes peut rencontrer des erreurs de construction AGP 9 similaires. C'est particulièrement visible dans les écosystèmes de plugins car de nombreux dépôts partagent des modèles anciens.
Quels mots-clés sont pertinents pour cette migration ?
Si vous documentez cela dans des livres de run ou des pages de support, incluez des termes comme :
- Erreur de construction AGP 9
- Fichier ProGuard Android Gradle Plugin 9 manquant
- Capacitor plugin Android échec de la construction
proguard-android.txtremplacementproguard-android-optimize.txtmigration
Lien connexe
- Developpeurs Android : Vue d'ensemble de l'application
- Plugin Android Gradle : Notes de version
- Android code réduction : R8 et règles
- Documentation Gradle : Fondamentaux des outils de construction
- Capacitor documentation : Documentation officielle
- Capgo documentation : Documentation de mise à jour automatique
Conclusion finale
Cette erreur de AGP 9 est simple, mais elle est facile à manquer dans les environnements de travail multi-plugin. proguard-android.txt Une fois que vous remplacez proguard-android-optimize.txt par
If you use Capgo plugins, this migration is already applied in official repositories so you can upgrade with fewer surprises.
Si vous utilisez des plugins Capacitor, cette migration est déjà appliquée dans les dépôts officiels, vous pouvez donc mettre à niveau avec moins de surprises.
Continuez à partir de la mise à jour de la correction d'erreur de build AGP 9 du plugin __CAPGO_KEEP_0__ Capacitor Plugin AGP 9 Build Error Fix la correction d'erreur de build AGP 9 du plugin __CAPGO_KEEP_0__ Capgo CI/CD la CI/CD Capgo pour le flux de travail du produit dans la CI/CD Capgo la CI/CD Capgo Native Builds Capgo Intégrations pour le flux de travail du produit dans Capgo Intégrations Intégration CI/CD pour le détail d'implémentation dans Intégration CI/CD, et GitHub Intégration d'actions pour le détail d'implémentation dans GitHub Intégration d'actions.