メインコンテンツにジャンプ
Capacitor

Capacitor 9: アプリとプラグインチームが今すぐできること

Capacitor 9はNode、Xcode、Android Gradle、非推奨のネイティブAPIを含むバーやを引き上げます。Capacitor 8にアクセスしてバージョン切り替え前に準備する方法を紹介します。これには、Cordovaのオプションの同期、CLIのライブリロード、CapgoのOTAストアビルドが含まれます。

Capacitor 9: アプリとプラグインチームが今すぐできること

Capacitor 9は next dist-tagにありますが、一般利用可能になるまでに進んでいます。アップグレードする必要はありませんが、 Capacitor 9の公式アップデートガイド と プラグインのアップデートガイド 既にツールチェーンのフロアとAPIの削除を明示的に記述し、早期に取り組むべき点を列挙する。

Capacitor 9 に対する準備 準備 チェックリスト: Capacitor 8 (またはブランチ) で行うことができる作業は、最終的な bunx cap migrate ツールチェーンとプラットフォームのフロア (アプリ)

CI、ローカルマシン、ストアパイプラインを __CAPGO_KEEP_0__ の最小要件に基づいて計画する。

エリア

Area Capacitor 9 requirement
Node.js 24+ 最新のLTS版を推奨します。npm 11にはNode 24が付属しています。
エリア 27+
iOS デプロイメント対象 16.0+
Android Studio 2026.1.1+
Android Gradle プラグイン (AGP) 9.2.1
Gradle ラッパー 9.5.1

Capacitor 9 に対して準備する場合、iOS の場合は Capacitor 8.4 以下の場合、さらに UIScene ライフサイクル Capacitor 9 の Capacitor 8.5 のアップデート以降に実行してください。Xcode 27 はそれを必要とします。8.5 にすでにアップグレードしているアプリは、この追加ステップをスキップできます。

iOS では、Swift 6 (Xcode 27) は @UIApplicationMain; @main in AppDelegate.swift は公式ガイドに記載されているように実行してください。

アプリの同期時点 (プラグインの準備ステップではありません) には Cordova が含まれます

In Capacitor 9、Cordova互換レイヤーは アプリにのみ cap sync Cordovaプラグインがインストールされている場合にのみに接続されます。 CapacitorCordova Androidは、プラグインが存在しない場合にGradleモジュールを削除します。iOSはPodfileまたは Package.swift に追加されなくなります。

これは app-level (__CAPGO_KEEP_0__) をチェックして、プロジェクトに実際のCordovaプラグインが存在しない場合にCordovaシンボルをインポートしているかどうかを確認してください。そういった参照は、オプションでCordovaの接続が適用された後は失敗します。 custom native code iOS:

Android: gradle.properties とAGP 9のデフォルト

AGPアップグレードアシスタントは、AGP 8の動作を維持するために明示的に gradle.properties flags によりビルドは AGP 8 の動作を維持します。 Capacitor 9 アプリケーションは remove AGPを推測するのを停止する android.builtInKotlin=false アップグレードする際には、次のことを期待してください: android.sdk.defaultTargetSdkToCompileSdkIfUnset=false 最小値を上げる targetSdkVersion).

Capacitor 9 への移行の際には、以下の点も考慮する必要があります。

  • 明示的な variables.gradle minimums (compile/target SDK 37, minSdkVersion 26、AndroidXの最新バージョン(公式ドキュメントを参照)。
  • 削除 targetSdkVersion アプリから build.gradle Capacitor 9 compileSdkVersion.
  • Declare variables.gradle at the top of app/build.gradle (Gradle 9.6は、root projectから暗黙の検索を削除しています)
  • Swap default ProGuardファイル名を交換し、 core-ktx to androidx.core:core 1.19.0+、スタンドアロンKotlin Gradle プラグインの使用を終了し、削除 jcenter().

1.19.0+、独立したKotlin Gradleプラグインの使用を終了し、削除 diff hunksを読むことができます Android セクションで、ブランチに同じクリーンアップを適用し、Capacitor バージョンを上げる前に。

CLI: cap run --url

Capacitor 9 は、ライブリロードのホスト/ポート/HTTPSフラグを単一の引数に統合します。 --url 代わりに:

bunx cap run android -l --host 192.168.1.181 --port 5173

開発サーバーが印刷するURLをパスします:

bunx cap run android --url http://192.168.1.181:5173/

CLI のアップグレード後、筋肉の記憶が新しい CLI と戦わないように、スクリプトと README Snippets を更新してください。

公式プラグイン: プッシュとスプラッシュの注意点

生産アプリケーションでよく出現する 2 つのユーザー向けの変更:

プッシュ通知 (iOS): 非推奨の alert プレゼンテーションオプションが削除されました。プレゼンテーションオプションで banner と/または list を使用してください。

スプラッシュスクリーン (Android): Default launchFadeOutDuration Capacitor 9.0の変更点 200 msから0 msに変更されました。 fadeによる初回描画のフリーズを非表示にする場合、 launchFadeOutDuration: 200 明示的に設定するまで capacitor.config スタートアップUIを調整するまで

Capacitor 9.0のアップデートガイドのプラグインセクションを AndroidXとGoogle Play Servicesのバージョンアップを確認する 公式プラグインを使用している場合

プラグインメンテナ: Cap 8でCap 8を破壊しないように準備する

If you ship Capacitor plugins consumed on Capacitor 8 と Cap 9用のcodeを用意するには、Cap 9の準備に焦点を当ててください。 APIの廃止__CAPGO_KEEP_0__の廃止はCap-9のみのパッケージング変更に焦点を当てるのではなく、

Cap 8がサポートされている限り、安全に実行できます:

  • 置き換え @NativePlugin に @CapacitorPlugin および、古い @PermissionCallback / @ActivityCallback パーミッション/アクティビティ結果APIを パターンに移行する( プラグイン9.0ガイド
  • を参照してください)。 PluginCall.hasOption, Plugin.getConfigValue削除 CapConfig コンストラクタとゲッター, PluginCall.save() / isSaved(), そしてJavaの削除リストの下にある “code” の中の変更について。
  • iOSでは、互換性のあるクラスと非推奨のヘルパーを使用しなくなり、代わりに CAPBridge 型付きアクセッサとブリッジプロパティをmigrationテーブルから使用すること。 CAPBridgeProtocol Run ApplicationDelegateProxyCapacitor 9の準備 PluginCall Capacitor 9の準備
  • Run bunx @capacitor/plugin-migration-v8-to-v9@latest on a branch and keep only the API edits that still compile against Cap 8 peer dependencies until you publish a major for Cap 9.

Capacitor 8のサポートを続ける間は、__CAPGO_KEEP_0__ 8のプラグインからSPM製品を削除しないでください。 Cordova __CAPGO_KEEP_0__ 8のサポートを続ける間は、__CAPGO_KEEP_0__ 8のプラグインからSPM製品を削除しないでください。 Package.swift while you still support Capacitor 8. Cap 8 のプロジェクトは、プラグインが SPM ベースの場合、依存関係を期待しています; これを早期に削除すると、8 にまだ対応している消費者を破壊します。対処法 オプションの Cordova / 不条件の削除 Cordova 製品 製品として Capacitor 9 限定 (または明示的に Cap 9 以降の Cap としてドキュメント化された semver メジャー) のリリースライン (または)、Cap 8 をサポート停止した後 — プラグイン ガイドで説明されているように、Cap 8 ラインの前準備としてではなく。 同様のルールが、バージョンを上げる

に適用されます。 capacitor-swift-pm to 9.0.0-alpha.x in Package.swift__CAPGO_KEEP_0__ は配信します

CapgoライブアップデートとネイティブCap 9ストアビルド

Capgo が提供する ウェブ バンドル オーバー・ザ・エアのアップデート;ネイティブシェルはまだApp StoreとGoogle Playから来ています。Capacitor 9にアプリを移すとき:

  1. Ship 少なくとも1つのストアビルド Capacitor 9ネイティブプロジェクト (iOSとAndroid) にコンパイルされたバイナリがネイティブ基準Capgo チャンネルをターゲットします。
  2. ユーザーがそのビルドを持っているのちにのみ、Cap 9 WebViewとプラグインの動作をテストしたOTAバンドルに頼ることができます。
  3. 生産チャンネルに metadata 戦略を立てて、それぞれのチャンネルにCap 9バンドルをアップロードしてください。 --auto-min-update-versionその意図的なネイティブ基準アップロードのために 省略 --fail-on-incompatible (ネイティブパッケージは変更されるべきです)。 --fail-on-incompatible と --auto-min-update-version 毎日OTAアップロード後。See ネイティブ+OTAチャネルワークフロー.
  4. チャネルとsemverルールを同期して、Cap 9 APIをまだ古いネイティブシェルを実行しているデバイスにプッシュしないようにします。

あなたが使用している Capgo ビルド コンテキスト: Capgoソリューションズマーケティングページ。役割: ショートUIラベルまたはナビゲーションアイテム。見られる場所: page solutions/white-label.astro。Capgo製品/ブランドと開発者用語を完全に保存する。 before 前に macOS Cap 9 ストアのリリースの前に、pipelineがユーザーがインストールするものと一致するようにします。 macOS; Linux Node 24+ とホストの Android ツールを AGP 9.2.1 / Gradle 9.5.1 に合わせる必要があります。 (Xcode は macOS 限定です)。 実行順序の推奨

インストール済みのツールをアップグレードします。

  1. CI ホストと開発用マシンに、上記のバージョン (Node、Xcode、Android Studio、JDK) にアップグレードします。 アップグレードしないでください。 しない Cap 9 の値に上げることは、移行ステップの変更に属します。 bunx cap migrate 古いネイティブ API を修正します。
  2. アプリケーション __CAPGO_KEEP_0__ とプラグイン (特にカスタム URL ハンドリングと Android ブリッジの使用) における古いネイティブ API を修正します。 app code とプラグイン(特にカスタム) AppDelegate developer
  3. Android Gradleを綺麗にする ファイルとスクリプト (gradle.properties, ProGuardのデフォルト ( --url 開発用スクリプト)。
  4. コルダバの使用状況をチェックする アプリケーションレベルでチェックする;Cap 9専用のリリースまでプラグインのSPM Cordova製品を変更しない。
  5. Cap 9がGA (またはCap 9を承認したとき)、run next(または bun add -d @capacitor/cli@next リリース後)、 @latest 、そして bunx cap migrate9.0にアップデートする compare_step_build_text.
  6. Cap 9のネイティブビルドを ストアに公開し、次にCapgoのOTAロールアウトを一時停止または拡大して、対応するチャンネルに再開します。

Capacitor 9は「古いものを返済し、現代のAndroidとAppleツールチェーンに合わせる」ことを中心に進められています。Cap 8でその作業を進めると、アップグレードの差分が小さく、プラグインが8.xを今でも出荷しているチームと互換性があるため、簡単になります。

Capacitorアプリ用の即時アップデート

When a web-layer bug is live, ship the fix through Capgo instead of waiting days for app store approval. Users get the update in the background while native changes stay in the normal review path.

最新のブログ

Capgo gives you the best insights you need to create a truly professional mobile app.