Capacitor-updaterとは
Capacitor-updaterは、ユーザーに即時でアプリの更新と改善を提供する技術です。
特に、緊急のバグ修正や即時配信を行う場合に便利です。 App Storeのレビューを経る必要がなくなるからです。
これは、サイドロード更新を即時で利用できるようにする「ウェブのような」スムーズさを実現するものです。
さらに、更新がアプリをクラッシュさせる場合にロールバックが提供されます。
どのように機能するか?
CapgoはアプリのJavaScriptバンドルをCapgoサーバーと同期し、ユーザーがアプリを開いたときに、Capgoサーバーと連携してバンドルの新しい更新が利用可能かどうかを確認します。当然ながら、多くの素晴らしい設定オプションが用意されており、ユーザーの体験を最適化するのに役立ちます。
私が作成するすべてのプロジェクトでCapgoを使用しています。これにより、アプリのレビュープロセスに時間を費やす必要がなくなります。
詳しくはこちらを参照してください。 Capacitorアップデーターの使用.
Understanding Semantic Versioning with Capgo
Capgo uses semantic versioning (semver) to determine when and how updates should be applied to your app. This ensures that your users only receive compatible updates and prevents breaking changes from being automatically deployed.
MAJOR MAJOR.MINOR.PATCH:
- : アプリのネイティブストアのリリースが必要な破壊的な変更MINOR
- MINOR新機能のバックポート
- PATCHバグ修正のバックポート
例えば、バージョン 1.0.0 にアップグレードしたい場合は 1.0.1 (パッチ)の場合、Capgoは自動的にこのアップデートを適用します。ただし、バージョン 1.0.0 から 2.0.0 (メジャーバージョン)にアップグレードしたい場合は、このアップデートはネイティブアプリストアのリリースが必要です。これは、破壊的な変更を示しているためです。
Capgoのチャンネル設定では、自動的に適用されるアップデートの種類を設定できます。
- メジャー戦略すべてのアップデートを許可する (注意: ご使用にご注意ください)
- マイナー戦略: __CAPGO_KEEP_0__のマイナーとパッチのアップデートのみを許可します。
- パッチ戦略: パッチのアップデートのみを許可します。
- メタデータ戦略: 最小バージョン要件を満たす必要があります。
Capgoのアップデートロジックをテストするには、さまざまなバージョン combinationがどのように機能するかを確認できます。 Semver Testerツール. このツールは、チャンネル設定に基づいてアップデートが適用される時刻を理解するのに役立ちます。
制限事項はありますか?
一見すると、OTAアップデートは素晴らしい機能のように思えるかもしれませんが、実際にはいくつかの制限事項があります。 最初の制限事項は、OTAアップデートはWeb Bundleのみをサポートしていることです。 Web Bundle以外のアップデートは、__CAPGO_KEEP_1__のJS、CSS、HTMLを書くだけで済むかもしれませんが、実際にはNative Moduleをインストールする必要があります。 Native ModuleがAndroidまたはiOSディレクトリを変更すると、OTAアップデートはアップデートできません。 これは、Native ModuleがNativeバイナリをコンパイルするために使用されるディレクトリの内容を変更するためです。 Nativeアプリでもこの部分をアップデートすることはできません。. You may think that this isn’t really a big limitation because, in Capacitor JS, we write almost all code in JS CSS and HTML. While this may be true, there still are native modules that we install to our app. If a module changes your android or iOS directories, you can’t use OTA to update your app. That’s because these directories’ contents are used to compile Native binaries, which OTA can’t update. Even native app cannot update this part.
ですが、CI/CDを設定してこの部分を自動化することもできます。CI/CDを設定する方法についてはこちらのチュートリアルを参照してください。 ここからiOSの設定.
Auto Capgo 設定
API アカウントを作成し、初期バージョンをアップロードするためのAPI キーを取得する時間です。まずは Capgo アカウントにサインアップしてください.
Capgo にログインすると、オンボーディングページが表示されます。

オンボーディングページの手順に従って、最初のアプリを追加してください。
CLI のガイダンスに従ってください。
コマンドラインから、Capacitor アプリのルートディレクトリに移動して、以下のコマンドを実行してください。
npx @capgo/cli@latest init
Capgo をCapacitor アプリにインストールするには、CLI はCapgo を使用してアプリを設定するプロセスを手助けします。
手動で設定する場合は、以下の手順に従ってください。
Manual Capgo 設定
プラグインをインストールする
この code がアプリに追加されるはずです。
npm i @capgo/capacitor-updater && npx cap sync
To install the plugin into your Capacitor app.
この code をアプリに追加して、JS バンドルが正常であることをnativeプラグインに通知する必要があります (これを行わないと、nativeプラグインは前のバージョンに戻されます):
import { CapacitorUpdater } from '@capgo/capacitor-updater'
CapacitorUpdater.notifyAppReady()
nativeプラグインにインストールの成功を通知します。
次に、アプリを更新するために npm run build && npx cap copy __CAPGO_KEEP_0__ CLOUD にログインする
最初に、Capgo のアカウントで利用可能な
apikey all を使用してログインします。 CLI:
npx @capgo/cli@latest login YOU_KEY
アプリを追加
Let’s get started by first creating an app in Capgo Cloud with the CLI.
npx @capgo/cli@latest app add
This command will use all variables defined in the Capacitor config file to create the app.
最初のバージョンをアップロード
Run the command to build your code and send it to Capgo with:
npx @capgo/cli@latest bundle upload
デフォルトでは、バージョン名はファイル内のものになります。 package.json Capgo
ビルドが存在する場合 Capgo Capgo
Capgo Capgo.
チャンネルをデフォルトに設定する
Capgoにアプリを送信した後、Capgoからアプリがアップデートを受け取るようにする必要があります。 default Capgoからアプリがリアルタイムでアップデートを受け取るには、デバイスまたはエミュレータでアプリを実行する必要があります。エミュレータまたはデバイスをコンピューターに接続して実行する最も簡単な方法は、以下のコマンドを実行することです。
npx @capgo/cli@latest channel set production -s default
デバイス上でアプリを実行し、バックグラウンドに置き、再度アプリを開くと、ログにアップデートが実行されたことが表示されます。
おめでとうございます! 🎉 これで最初のリアルタイムアップデートを成功させました。これは、リアルタイムアップデートの機能の始まりです。リアルタイムアップデートの詳細については、ドキュメントを参照してください。
npx cap run [ios | android]
リアルタイムアップデートのドキュメント
ローカルでアップデートを受信しないようにするには、このコマンドを実行します。 アップデートを実行するには、__CAPGO_KEEP_1__-updaterを使用して__CAPGO_KEEP_0__アプリをアップデートすることができます。.
__CAPGO_KEEP_1__-updaterを使用して__CAPGO_KEEP_0__アプリをアップデートすることができます。
npx @capgo/cli@latest channel set
Capacitorアプリをアップデートするには、Capacitor-updaterを使用することができます。
__CAPGO_KEEP_0__アプリをアップデートするには、__CAPGO_KEEP_1__-updaterを使用することができます。 Capacitorアプリをアップデートするには、Capacitor-updaterを使用することができます。 マイグレーションとエンタープライズオペレーションを計画するには、 Capgo エンタープライズ for the product workflow in Capgo Enterprise, __CAPGO_KEEP_0__ エンタープライズ製品フロー イオニックエンタープライズプラグイン代替 Capgo 代替 Capgo コンサルティング Capgo プレミアムサポート Capgo プレミアムサポート Capgo コンサルティング Capgo プレミアムサポート