__CAPGO_KEEP_0__ アプリを __CAPGO_KEEP_1__-updater を使用してスムーズに更新
チュートリアル

CapacitorアプリをCapacitor-updaterを使用してスムーズに更新する

Capacitor Ionic Communityにあなたの挨拶、今日私はあなたにCapacitor-updaterをあなたのアプリに設定する手助けをします。 したがって、スムーズなリリースを実行することができます。

マーティン・ドナディュー

マーティン・ドナディュー

コンテンツマーケター

CapacitorアプリをCapacitor-updaterを使用してスムーズに更新する

Capacitor-updaterとは?

Capacitor-updaterは、ユーザーにアプリの更新と改善を即時で提供する技術です。

この機能は、緊急のバグ修正を実行し、App Storeのレビューを経ることなく即時で提供する場合に特に便利です。

これは、更新が利用可能になったときに即時で側面ロードすることができる「ウェブのような」迅速性を実現するものと考えることができます。

さらに、更新がアプリをクラッシュさせる場合にロールバックが提供されます。

どのように機能するのですか?

CapgoはアプリのJavaScriptバンドルをCapgoサーバーと同期し、ユーザーがアプリを開くたびにCapgoサーバーと連携して、バンドルに新しい更新が用意されているかどうかを確認します。当然ながら、多くの素晴らしい設定オプションが用意されており、ユーザーの体験をより細かく調整することができます。

私が作成するすべてのプロジェクトでCapgoを使用しています。これにより、App Storeのレビュープロセスに時間を割く必要がなくなります。

詳しく知りたい場合はこちらを参照してください。 __CAPGO_KEEP_0__を使用したセマンティックバージョニングの理解.

Capgoはセマンティックバージョニング(semver)を使用して、アプリに適用される更新の時期と方法を決定します。これにより、ユーザーが互換性のある更新を受け取り、自動的に展開される破壊的な変更を防止します。

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
  • __CAPGO_KEEP_0__: バックグラウンド互換性のある新機能
  • PATCH: バックグラウンド互換性のあるバグ修正

例えば、Appのバージョンが 1.0.0 で、 1.0.1 (パッチ)にアップグレードしたい場合、Capgoは自動的にこのアップデートを適用します。ただし、 1.0.0 から 2.0.0 (メジャーバージョン)にアップグレードしたい場合、これはネイティブアプリストアのリリースが必要です。これは、破壊的変更を示すためです。

Capgoのチャンネル設定では、自動適用されるアップデートの種類を設定できます:

  • メジャー戦略: 全てのアップデートを許可する (注意してください)
  • マイナー戦略: __CAPGO_KEEP_0__ のマイナーとパッチの更新のみ
  • Patch strategy: パッチの更新のみ
  • Metadata strategy: 最小バージョン要件を満たす必要があります

You can test how different version combinations work with Capgo’s update logic using our Semver Tester tool. This tool helps you understand exactly when updates will be applied based on your channel configuration.

Are there any limitations?

この手法は素晴らしいように思えますが、注意する必要があります。 OTA の更新は、Web Bundle のみで機能します。あなたは、code の JS、CSS、HTML をほとんど書いている Capacitor JS では、この制限が本当に大きな問題ではないと思いそうです。しかし、実際には、ネイティブモジュールをアプリにインストールする必要があります。ネイティブモジュールがアンドロイドまたはiOS ディレクトリを変更すると、OTA を使用してアプリを更新することはできません。なぜなら、これらのディレクトリの内容はネイティブバイナリをコンパイルするのに使用されるからです。OTA はこれらのバイナリを更新できません。

CI/CDを設定して、この部分を自動化することができます。設定方法についてはチュートリアルをこちらでご覧ください。 iOS向け.

Auto Capgo Configuration

アカウントを作成し、最初のバージョンをアップロードするために必要なAPIキーを取得する時間です。最初のステップは Capgoアカウントを作成することです。.

Capgoにログインすると、オンボーディングページが表示されます。

オンボーディングページ

__CAPGO_KEEP_0__のガイドに従って、最初のアプリを追加してください。

CLIのガイドに従ってください。

Capacitorアプリのルートディレクトリで、コマンドラインから

npx @capgo/cli@latest init CapgoをCapacitorアプリにインストールするには、CLIはCapgoと連携してアプリを設定するプロセスを手助けします。

手動で設定する場合は、以下の手順に従ってください。

マニュアル Capgo 設定

プラグインをインストール

あなたはこの code をアプリに追加することになるはずです。

npm i @capgo/capacitor-updater && npx cap sync あなたの Capacitor アプリにプラグインをインストールするには

そしてあなたのアプリにこの code を追加して、JS バンドルが正常であることをネイティブ プラグインに通知することになります (あなたがこれを行わないと、ネイティブ プラグインは前のバージョンに戻します):

import { CapacitorUpdater } from '@capgo/capacitor-updater'

CapacitorUpdater.notifyAppReady()

これはネイティブ プラグインにインストールが成功したことを伝えることになります。

次に、 npm run build && npx cap copy アプリを更新する

Login to Capgo CLOUD

APIキー all あなたのアカウントに含まれている を使用して、CLI CLOUD にログインする

npx @capgo/cli@latest login YOU_KEY

最初のアプリを追加

Capgo CloudでCLIを使用して最初のアプリを作成しましょう。

npx @capgo/cli@latest app add

Capacitor configファイルに定義されているすべての変数を使用してアプリを作成するコマンドを実行します。

最初のバージョンをアップロード

codeをビルドし、Capgoに送信するコマンドを実行してください。 npx @capgo/cli@latest bundle upload

デフォルトでは、バージョン名はファイル内のものになります。 package.json ビルドが存在するかどうかを確認するには、__CAPGO_KEEP_0__をチェックしてください。

__CAPGO_KEEP_0__でビルドが存在するかどうかを確認するには、__CAPGO_KEEP_0__をチェックしてください。 Capgoでビルドが存在するかどうかを確認するには、Capgoをチェックしてください。 モバイルサンドボックスアプリでテストすることもできます

最初のバージョンをアップロード 最初のバージョンをアップロード.

デフォルトチャンネルに設定

Capgoにアプリを送信した後、チャンネルを設定する必要があります。 default Capgoからアプリが更新を受け取るようにするためです。

npx @capgo/cli@latest channel set production -s default

デバイスでライブアップデートを受信する

Deployからライブアップデートを受信するには、アプリをデバイスまたはエミュレータで実行する必要があります。エミュレータまたはコンピューターに接続されたデバイスでアプリをローカルで実行するには、以下のコマンドを実行するのが簡単です。

npx cap run [ios | android]

アプリを起動し、バックグラウンドに置き、再度アプリを起動すると、ログにアップデートが実行されたことが表示されます。

おめでとうございます! 🎉 これでライブアップデートの初回のデプロイが成功しました。これがライブアップデートの始まりです。ライブアップデートについてもっと学びたい場合は、ライブアップデートのドキュメントをご覧ください。 ライブアップデートのドキュメント.

ローカルでアップデートを受信しないようにするには、このコマンドを実行してください。 npx @capgo/cli@latest channel set

Capacitor アプリのためのライブアップデート

Capgo を使用して、ウェブ層のバグがライブの場合、修正を待つ必要がなく、数日間待つ必要がなく、ユーザーはバックグラウンドでアップデートを受け取り、ネイティブの変更は通常のレビュー パスに残ります。

今すぐ始めましょう

ブログの最新記事

Capgo は、プロフェッショナルなモバイル アプリを作成するために必要な最良の洞察を提供します。