あなたの Capacitor AGP 9 にアップグレードした後、Android Gradle プラグイン 9 (AGP 9) でプラグインが失敗した場合、Gradle の構成問題に遭遇している可能性があります。
この投稿では、次のような一般的な検索意図を対象としています。
- Capacitor プラグイン ビルド エラー AGP 9
- Android Gradle プラグイン 9 プラグイン ビルド失敗
proguard-android.txt見つかりません- AGP 9
getDefaultProguardFileエラー - Capacitor Android ビルド AGP アップグレード後失敗
簡単な説明:
proguard-android.txt__CAPGO_KEEP_0__はAGP 9 プラグインビルドの安全なデフォルト基準としてはもう使用できません。- に切り替えます
proguard-android-optimize.txt. - 再構築と確認
Capacitorが多くある場合や、大規模なCapacitorワークスペースを管理する場合など、長い説明も重要です。この記事では以下の内容について説明します。
- AndroidとAGPがビルドチェーンにどのように関係しているか
- Capacitorが何なのか、プラグインビルドのしくみ
- __CAPGO_KEEP_0__ Capgoが何なのか、リリースの信頼性にどのように関係しているか AGP 9で古いプラグインテンプレートを破壊する変更内容
- 1つのリポジトリまたは多くのリポジトリに安全に移行するための戦略
- targetLanguage
Androidはこの文脈で何を意味しますか?
__CAPGO_KEEP_0__ Androidは、オペレーティングシステムとビルドエコシステムの両方です。Android上でCapacitorアプリまたはプラグインを配信する場合、プロジェクトは次のプロセスを通過します:
- Gradle Gradleビルドシステムとして機能します。
- Android Gradle Plugin (AGP) Android固有のGradle統合として機能します。
- Android SDK ツールチェーンは、パッケージング、縮小、linting、および出力
.aar,.apkのプロセスを提供します。.aabAGPバージョンが変更された場合、既定値と内部ファイルも変更される可能性があります。AGP 8で機能していたプラグイン構成がAGP 9で機能しない場合、削除または非推奨のベースラインに指している可能性があります。
何が__CAPGO_KEEP_0__?
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アプリは通常、以下の要素を含みます。
- Web層(UIとビジネスロジック)
- Nativeシェル(
ios/,android/) - JavaScriptにnative機能を公開するプラグイン
各プラグインには独自のnativeビルド設定があります。Androidの場合、これは各プラグインに含まれる android/build.gradle ファイルをAGPが正しくパースしてコンパイルする必要があります。
If plugin Gradle settings are outdated, the whole app build can fail, even when your web code is correct.
Capgoが正しい場合でも。
Capgoは何ですか? Capacitorは、Capacitor配信と運用に関するツールを提供します。
- リアルタイム更新 ウェブバンドルの変更に対応
- プラグインエコシステムとネイティブ機能パッケージ
- CI/CD-friendly update workflows for Capacitor teams
リアルタイム更新がある場合でも、ネイティブビルドの安定性は妥協できない。次の場合に、クリーンなAndroidビルドが必要だ。
- App Store / Play Storeのリリース
- ネイティブプラグインのアップグレード
- プラットフォームのSDKへの移行
- チームのオンボーディングとCIの信頼性
AGP 9の互換性の修正は重要な理由は、プラグイン層の信頼性を維持することで、配信パイプラインの予測性を維持することだ。
AGP 9が古いプラグイン設定を破壊する理由
多くのプラグインテンプレートは歴史的に使用していた:
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
In AGP 9 のセットアップでは、このレガシーバイナリ参照は失敗する可能性があります。古いファイルは、古いテンプレート/設定によって期待される場所で保証されていません。
通常の症状は、Gradle エラーの発生です。 assemble, lint, or build phases, often pointing to missing ProGuard baseline resources or invalid default file references.
Quick background: ProGuard, R8, and baseline files
- R8 is the modern code shrinker/optimizer in Android builds.
proguard-rules.proプロガード、R8、および基準ファイルのgetDefaultProguardFile(...)R8
は、Android ビルドの現代的な
proguard-android.txtは、プロジェクト/プラグインのカスタム保持ルールです。proguard-android-optimize.txtAndroid から提供される基準ファイルをインジェクトします。
AGP 9の互換性のために、"を切り替えることが実用的解決策です。 proguard-android-optimize.txt 一行の修正
Update plugin and app module Gradle files:
少なくとも、確認してください:
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
各プラグイン
android/build.gradleプラグインリポジトリexample-app/android/app/build.gradle新しいプラグインGradle構成を作成する任意のジェネレータ/テンプレートファイル- 1 つのプラグインの移行ガイド
1. 旧の参照を探す
2. を置き換える
rg -n "proguard-android\\.txt" android example-app
3. を確認する
perl -pi -e "s/proguard-android\\.txt/proguard-android-optimize.txt/g" \
android/build.gradle example-app/android/app/build.gradle
Bun
bun run verify:android
あなたのプラグインが完全な検証スクリプトを持っている場合、実行してください:
bun run verify
すべてのプラグインリポジトリをバッチで更新
あなたが1つのワークスペース内に多くのプラグインリポジトリを管理している場合、自動化してください:
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"
__CAPGO_KEEP_0__ のバージョンを確認する
for d in capacitor-*; do
[ -d "$d/.git" ] || continue
git -C "$d" grep -n "proguard-android\\.txt" -- || true
done
__CAPGO_KEEP_0__ のバージョンが古い場合、以下の手順に従ってください。
Capgo のバージョンが古い場合、以下の手順に従ってください。
We completed this migration across all official Capgo Capacitor plugin repositories and templates:
- 古いファイルを使用していないことを確認する
proguard-android-optimize.txt - 古いファイルを使用していないことを確認する
- __CAPGO_KEEP_0__ のロールアウトステータス
公式の __CAPGO_KEEP_0__ __CAPGO_KEEP_1__ プラグインリポジトリとテンプレートをすべてのマイグレーションに成功させました。
プラグインのAndroidモジュールは、__CAPGO_KEEP_0__ を参照するようになりました。
You might not see failures immediately if:
- CIキャッシュが問題を隠している場合
- プロジェクト間でAGPバージョンが混在している
- ローカル開発では、すべてのモジュールが再構築されていない
しかし、最終的には、クリーンビルド、新しい環境、またはアップグレードされたランナーが問題を明らかにします。現在の移行により、隠された不安定性が排除されます。
移行後もビルドが失敗する場合のトラブルシューティング
確認する点:
-
すべてのモジュールがパッチが適用されている。
-
プラグインモジュール、アプリモジュール、サンプル、テンプレートアセットを確認する。
-
共有スクリプトに2回目の参照がない。
./gradlew cleanすべてのリポジトリ(包括カスタムGradleスクリプト)を検索する。 -
キャッシュがクリーンである。 Run と再構築する。
-
CIはローカルと同じバージョンを使用します。 CIでJDKとGradle wrapperのバージョンを固定して環境の変化を防止します。
-
あなたは単に修正していない
node_modulesトラッキングされているプラグインのソースを修正せずに、非恒久的な依存関係ディレクトリを修正しないでください。
SEO FAQ: AGP 9 Capacitor プラグインのビルドエラー
Android Gradle Plugin 9にアップグレードした後、__CAPGO_KEEP_0__ プラグインのビルドが失敗するのはなぜですか? proguard-android.txt 修正するには
を置き換えます。
getDefaultProguardFile('proguard-android.txt')
で
getDefaultProguardFile('proguard-android-optimize.txt')
そして、クリーンなビルドを実行してください。
Android Gradle Plugin 9にアップグレードした後、Capacitor プラグインのビルドが失敗するのはなぜですか?
ほとんどの失敗は、プラグインファイルにまだAGP 9のバージョンを参照している古いGradle設定から来ています。 android/build.gradle なぜ私の__CAPGO_KEEP_0__ プラグインのビルドがAndroid Gradle Plugin 9にアップグレードした後失敗するのですか? proguard-android.txt. AGP 9 プロジェクトは proguard-android-optimize.txt.
AGP 9 の多くの Capacitor プラグインの最速の移行パスは何ですか?
ワークスペース全体の検索置換コマンドを使用し、次に git grep と実行して bun run verify:android 代表的なプラグインで検証します。
これは Capacitor のみの問題ですか?
いいえ。デプロイされた ProGuard 基準参照を使用している Android モジュール (アプリまたはライブラリ) は、類似の AGP 9 ビルドエラーに遭遇する可能性があります。特にプラグインエコシステムでは、多くのリポジトリが古いテンプレートを共有しているため、特に目立つようになります。
この移行に関連するキーワードは何ですか?
内部の実行書き方やサポートページでこの内容を記載する場合は、以下の用語を含めてください。
- AGP 9 ビルドエラー
- Android Gradle プラグイン 9 ProGuard ファイルが欠落している
- Capacitor プラグインの Android ビルドが失敗しました
proguard-android.txt置換proguard-android-optimize.txt移行
関連リンク
- Android Developers: アプリの構築概要
- Android Gradle プラグイン: リリースノート
- Android code Shrinking: R8とルール
- Gradle ドキュメント: ビルドツールの基本
- Capacitor ドキュメント: 公式ドキュメント
- Capgo ドキュメント: 自動更新ドキュメント
最終的なまとめ
__CAPGO_KEEP_0__ プラグインを使用している場合、このマイグレーションは公式リポジトリで既に適用されているため、予期せぬサプライズが少なくアップグレードできます。 proguard-android.txt __CAPGO_KEEP_0__ プラグイン AGP 9 ビルド エラー修正 proguard-android-optimize.txt __CAPGO_KEEP_0__ プラグイン AGP 9 ビルド エラー修正
CI/CD オートメーションを計画する場合、Capgo プラグイン AGP 9 ビルド エラー修正
CI/CD オートメーションを計画する場合、Capacitor プラグインと接続する
AGP 9 の問題は単純ですが、複数のプラグインを使用するワークスペースでは見落としやすいことがあります。__CAPGO_KEEP_0__ をすべての関連する場所に置き換えると、Android ビルドが予測可能になるので、 AGP 9 の問題は単純ですが、複数のプラグインを使用するワークスペースでは見落としやすいことがあります。Capacitor をすべての関連する場所に置き換えると、Android ビルドが予測可能になるので、 AGP 9 の問題は単純ですが、複数のプラグインを使用するワークスペースでは見落としやすいことがあります。__CAPGO_KEEP_0__ をすべての関連する場所に置き換えると、Android ビルドが予測可能になるので、 Capgo CI/CD Capgo の製品ワークフローにおける CI/CD Capgo Native Builds Capgo の製品ワークフローにおける Native Builds Capgo Integrations Capgo の製品ワークフローにおける Integrations CI/CD Integration CI/CD Integration の実装詳細 GitHub Actions Integration GitHub Actions Integration の実装詳細