メインコンテンツにスキップ
チュートリアル

Capgoのバージョン管理の仕組みを理解する

CapgoでCapacitorアプリのバージョン管理を最適化する方法を学びましょう。

バージョンの意味を理解するには、メジャー、ミニマム、パッチの概念を理解する必要があります。

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

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

How version work in Capgo

Capgo uses 2 main variables to manage versions in your Capacitor app:

  • ネイティブ版
  • JavaScriptバージョン
Capacitorのアップデートシステム

すべてのバージョン選択はCapgoによってサーバーサイドで決定されます。

バージョニングシステム

Capgoのバージョンを管理するには、SemVerシステムを使用します。SemVer仕様を参照してください。 SemVer仕様 または、Semverテスターを使用してCapgoのアップデートの互換性を確認してください。 バージョン.

ここで__CAPGO_KEEP_0__はバージョンを比較する場所を見つけることができます。

Where Capgo find the version to compare

この動作を上書きするには、バージョンキーを設定してください。 capacitor.config.json __CAPGO_KEEP_0__ ここ すべてのプラットフォームで、ネイティブバージョンは無視されます。

IOS

IOSの場合、変数はプロジェクトのここで設定されています。 ios/App/App/Info.plist __CAPGO_KEEP_1__CFBundleShortVersionString または ios/App/App.xcodeproj/project.pbxproj もし MARKETING_VERSION あなたの MARKETING_VERSION __CAPGO_KEEP_0__ Info.plist file

Android

Android では、プロジェクトのここで変数が設定されます android/app/build.gradle キー defaultConfig.versionName

JavaScript ( Capgo バンドルバージョン )

JavaScript では、変数はここで設定できます package.json キー version アップロードコマンドで指定しない場合は、変数を提供する必要があります。

デフォルトの動作

Capgo チャンネルのデフォルトの動作は、どの設定も変更しない場合の動作です。

デフォルトのチャンネルに基づいて動作が決まります。

新しい Capacitor アプリのインストール時

新しい Ionic アプリをダウンロードし、初めてアプリを開いたユーザーが Capgo サーバーに接続します。

現在、4 つの出力が発生することができます:

  • Capgo バンドルバージョン (1.2.3) は、Capgo バンドルバージョン (1.2.4) よりも低い場合、Capgo はバンドルをユーザーに送信します。
  • Capgo バンドルバージョン (1.2.3) と Capgo バンドルバージョン (1.2.3) は等しい場合、Capgo は “アップデートしなくてもいい” と送信します。
  • Capgo バンドルバージョン (1.2.4) は Capgo バンドルバージョン (1.2.3) よりも高いため、Capgo は “アップデートしなくてもいい” と送信します。
  • Capgo バンドルバージョン (2.2.3) は Capgo バンドルバージョン (1.2.3) よりも MAJOR 低いため、Capgo は “アップデートしなくてもいい” と送信します。

その他の設定

ネイティブの自動ダウングレードを無効にする

この設定を false にすると、Capgo は常にバージョンの信頼できるソースとみなされます。 すると、次のようになります:

  • Capgo バージョン (1.2.4) は __CAPGO_KEEP_1__ バージョン (1.2.3) よりも高いため、__CAPGO_KEEP_1__ はバージョンをユーザーに送信します。

Capgo を無効にする

アップグレード戦略があります。詳しくはこちらを参照してください。

アップグレード戦略を選択できます。詳しくはこちらを参照してください。 ここ

JavaScript バンドルバージョン

JavaScript バンドルバージョンは、実行するときに送信するバージョンです。 npx @capgo/cli@latest bundle upload --channel production

オプションを使用しなかった場合 --bundle 1.2.3Capgo からバンドルバージョンを取得します。 package.json Capgo から __CAPGO_KEEP_0__ をインストールした後、__CAPGO_KEEP_0__ のバンドルバージョンが比較対象となります。

彼らの JavaScript バンドルバージョン (1.2.3) は Capgo のバンドルバージョン (1.2.4) よりも低いです。__CAPGO_KEEP_1__ はユーザーにバンドルを送信します。

  • Their JavaScript bundle version (1.2.3) is lower than Capgo bundle version (1.2.4), Capgo send his bundle to the user.

native bundle バージョンが __CAPGO_KEEP_0__ バージョンより高かった場合、条件は適用されます。

  • native bundle バージョンが Capgo バージョンより MAJOR 下だった場合、条件は適用されます。 Disable auto downgrade under native native bundle バージョンが __CAPGO_KEEP_0__ バージョンより MAJOR 下だった場合、条件は適用されます。
  • native bundle バージョンが Capgo バージョンより MAJOR 下だった場合、条件は適用されます。 Disable auto upgrade above major 条件が適用されます。

アプリストアの更新

When you publish your Capacitor JS app on the App Store, what happens is simple.

ユーザーは新しいバージョンをストアから取得し、デフォルトではローカル更新をすべて削除します。

変更したい場合は設定を変更する必要があります。 resetWhenUpdate 詳しくはこちら 他の設定と異なり、クラウドから変更することはできません。

他の設定

この挙動の後、デバイスIDに関連付けられた特定のものが上にあります。

Capgoでは、デバイスIDごとに挙動をオーバーライドすることができます。

In Capgo, you can decide to override the behavior for each deviceID.

__CAPGO_KEEP_0__

  • 特定バンドルのバージョン
  • 特定のチャネル

上記の設定をすべて無視します。

__CAPGO_KEEP_0__に関する詳細は以下の記事で学べます。

Capgoのバージョンについてはどうやって進めていきますか?

__CAPGO_KEEP_0__を使用している場合 Capgoのバージョンについてはどうやって進めていきますか? __CAPGO_KEEP_0__を使用してネイティブプラグインの作業を計画する場合、__CAPGO_KEEP_0__と接続します。 Capgo プラグイン ディレクトリ Capgo プラグイン ディレクトリ内での製品ワークフロー Capacitor Plugins by Capgo Capacitor プラグインのCapgo プラグインの追加または更新 プラグインの追加または更新の実装詳細について Ionic Enterprise プラグインの代替 Ionic Enterprise プラグインの製品ワークフローについて Capgoネイティブビルド Capgoネイティブビルドの製品ワークフローについて

Capacitorアプリ向けのリアルタイム更新

ウェブ層のバグが生じた場合、Capgoを通じて修正を配信するのではなく、数日間待ってアプリストアの承認を待つのではなく、ユーザーはバックグラウンドで更新を受け取り、ネイティブの変更は通常のレビュー経路を通じて

Get Started Now

Latest from our Blog

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