__CAPGO_KEEP_0__のOTAアップデートを使用して、アプリのアップデートを簡素化したい アプリのアップデート バージョン管理? Semantic Versioning (SemVer) と組み合わせて CapgoCloudflare のオーバー・ザ・エア (OTA) の更新機能により、 Capacitor アプリの管理が簡単で速くなります。ここではその方法を紹介します。
-
Semantic Versioning の基本 バージョンは以下の形式で使用されます
MAJOR.MINOR.PATCH:- MAJOR: 重大な変更
- MINOR: バックグラウンド互換性のある新機能
- PATCH: バグ修正用。
-
なぜ Capgo に SemVer を使用する必要があるのですか?
- __CAPGO_KEEP_0__ の更新情報について明確なコミュニケーションをとること。
- __CAPGO_KEEP_0__ のバージョン管理をよりスマートにすること。
- 依存関係の競合を避けること。
- リリース計画を整理すること。
-
Capgo のセットアップ ステップ:
- Capgo のアップデート プラグインをインストールする。
- __CAPGO_KEEP_0__ のアプリのバージョンを
capacitor.config.jsonファイルなどで設定する。 - あなたのAPIキーで初期化してください。
- 使用 Capgo CLI を使用してバンドルおよびアップロードしてください。
-
- 別々のチャンネル(例:「ベータ」テスト、 「プロダクション」安定版)を使用してください。
- 更新ポリシーを制御(パッチの自動更新、主な変更の手動承認)
- 失敗した更新のロールバックオプション
-
デプロイメントプロセス:
- SemVer規則に従ってバージョン番号を更新してください。
- テストを徹底的に行ってからデプロイしてください。
- CLIコマンドを使用してアップロードおよび配布してください。
Capgo は迅速かつ信頼性の高い更新をユーザーに届けることを保証し、障害や不安定性を管理するためのツールを提供します。CI/CD ワークフローを使用して自動更新を実行するチームに適しています。
Quick Tip: 常に更新をテストし、ステージド ロールアウトを効果的に管理するためのチャネルを使用しましょう。
セマンティック バージョニング | レベル アップ
Capgo セットアップ ガイド

ここでは、OTA更新とバージョン管理を容易に管理するためにCapgoをセットアップする方法を紹介します。
初期セットアップ手順
最初に、 Capgo アップデート プラグインをインストールしてください:
npm install @capgo/capacitor-updater
npx cap sync
Capgoの設定を確認してください capacitor.config.json __CAPGO_KEEP_0__ファイルは、セマンティックバージョン形式で使用されていることを確認してください
{
"appId": "com.example.app",
"appName": "My App",
"version": "1.0.0"
}
古いプロジェクトの場合、次の場所でバージョン情報を更新してください:
package.json__CAPGO_KEEP_0__のバージョン情報を更新するversion__CAPGO_KEEP_0__のバージョン情報を更新するandroid/app/build.gradle設定が完了したら、__CAPGO_KEEP_1__キーとともに__CAPGO_KEEP_0__を初期化してくださいversionName)ios/App/App.xcodeproj/project.pbxprojクイックリファレンス表CURRENT_PROJECT_VERSION)
Once configured, initialize Capgo with your API key:
npx @capgo/cli@latest init YOUR_API_KEY
キー
| アクション | 検証ステップ | Capgoの設定を確認してください |
|---|---|---|
| インストール | プラグインをインストールし、同期 | 確認 package.json |
| 設定 | __CAPGO_KEEP_0__ のバージョン番号を設定 | すべてのファイルで確認 |
| 初期化 | API キーと接続 | 接続状態をテスト |
| ビルド | 初期バンドルを作成 | アップロード成功を確認 |
バージョン管理統合
CapgoはCI/CDプラットフォームとよく組み合わさり、自動更新 が簡単になります。サポートされているプラットフォームは次のとおりです。 __CAPGO_KEEP_0__ Actions
__CAPGO_KEEP_0__がローカル変更を上書きしないようにするためです。セットアップが完了したら、最初のバージョンをアップロードしてください。
{
"plugins": {
"CapacitorUpdater": {
"autoUpdate": false
}
}
}
This ensures Capgo won’t overwrite your local changes. Once your setup is ready, upload your first version:
npx @capgo/cli@latest bundle upload
npx @capgo/cli@latest channel set production -s default
サポートされているCI/CDプラットフォーム
import { CapacitorUpdater } from '@capgo/capacitor-updater';
CapacitorUpdater.notifyAppReady();
このセットアップにより、OTAのスムーズな展開とバージョン管理が可能になります。
Capgo を使用してセマンティック バージョニング
バージョン番号管理
Capgo はセマンティック バージョニング (SemVer) を使用してアプリのバージョンを管理し、次の形式でフォーマットされます。 メジャー.マイナー.パッチ ここではどのように機能するかを説明します。
- メジャーバージョン (X.0.0):互換性が破壊される変更の場合にメジャー番号を増分します。
- マイナーバージョン (1.X.0):互換性が維持される新機能の場合にマイナンバーを増分します。
- パッチバージョン (1.0.X):互換性が維持されるバグ修正の場合にパッチ番号を増分します。
| バージョンタイプ | __CAPGO_KEEP_0__ のときインクリメントする | 自動更新の動作 |
|---|---|---|
| メジャー (X.0.0) | 重大な API の変更の場合 | 手動の承認が必要 |
| マイナー (1.X.0) | 新機能の場合 | Capgo で設定可能 |
| パッチ (1.0.X) | バグ修正の場合 | 通常自動 |
バージョン管理の規則に従うことで、デプロイメントチャンネルの間で滑らかなアップデートを保証し、バージョン管理を簡素化できます。
バージョン管理ガイドライン
Capgo を使用すると、ワークフローの異なる段階ごとに異なるチャンネルを設定して、デプロイメントを効果的に管理できます。
-
チャンネルベースのバージョン管理: デプロイメントプロセスを整理するには、テストとプロダクション用に別々のチャンネルを作成してください。
- 例えば、
- 新機能のテストに “ベータ” チャンネル (例: 1.2.0-beta) を使用します。
- 安定したリリース用に “プロダクション” チャンネル (例: 1.2.0) を維持します。
-
プラットフォーム固有の問題に対処するには、プラットフォーム固有のチャンネル (例: “ios-hotfix” 1.2.1) を追加します。: Control how updates are applied using Capgo’s configuration options. For instance:
{ "plugins": { "CapacitorUpdater": { "disableAutoUpdate": "minor" } } }: __CAPGO_KEEP_0__ の設定オプションを使用して、更新が適用される方法を制御できます。たとえば、
-
この設定では、ユーザーは自動的にパッチアップデートを受け取りますが、メジャーおよびマイナーアップデートには手動の承認が必要です。: __CAPGO_KEEP_0__.preリリース識別子を使用して、明確なロールバックオプションを維持します。このアプローチでは、問題が発生した場合に前のバージョンに戻ることができ、すべてのチャネルでバージョニングを一貫して維持できます。
これらのベストプラクティスにより、アプリのデプロイプロセスの更新管理、新機能のテスト、安定性の維持が容易になります。
sbb-itb-f9944d2
OTA更新のデプロイ
バージョン管理設定が完了したら、次の手順に従って、OTA更新を効果的にデプロイします。
更新準備
まず、__CAPGO_KEEP_0__.config.json と package.json capacitor.config.jsonバグ修正
- Update Preparation: __CAPGO_KEEP_0__をPATCH番号に増やす (例: 1.0.1 → 1.0.2)
- 新機能: __CAPGO_KEEP_0__をMINOR番号に増やす (例: 1.0.0 → 1.1.0)
- 重大な変更: __CAPGO_KEEP_0__をMAJOR番号に増やす (例: 1.0.0 → 2.0.0)
アプリを完全にテストし、サーバーと正常に通信していることを確認する notifyAppReady.
次に、 アップデート戦略を決定する. 以下の選択肢があります:
- 自動更新: 最小バージョン要件を自動的に適用する
- マニュアルコントロール: __CAPGO_KEEP_0__ の正確なバージョン要件をアップデートに指定します。
- Channel-Based: チャンネルを使用してテストとステージングのロールアウトを実行します。
Capgo CLI のアップデートコマンド
Use Capgo’s CLI to deploy your update with ease. Here’s how:
# Initialize Capgo in your project
npx @capgo/cli@latest init [apikey]
# Upload your update bundle
npx @capgo/cli bundle upload [appId]
# Add a new distribution channel
npx @capgo/cli channel add [channelId] [appId]
Capgo は、エンドツーエンド暗号化と安全なキー管理を備えた安全なデプロイを保証します。
“Capgo は、@AppFlow と同じ金額を払うことなく、@Capgo を使用してホット code プッシュを実行する賢い方法です 🙂”
アップデートがデプロイされた後は、Capgo のダッシュボードを使用してアップデートを監視できます。アップデートはユーザーがアプリを開いた後、通常数分以内にユーザーに到達します。プロセスは次のとおりです。
- アプリはアップデートをチェックします。
- バックグラウンドでアップデートをダウンロードします。
- ユーザーがアプリを終了したときに、新しいバージョンを有効にします。
- 次の起動時にアップデートを適用します。
企業向けの展開では、CI/CDの自動化を統合したい場合があります。
“We practice agile development and @Capgo is mission-critical in delivering continuously to our users!”
Problem Solving and Tips
Version Management Issues
Managing semantic versioning in Capgo can sometimes complicate update deployments. To avoid overwriting your development work, configure the following in your capacitor.config.json file:
{
"plugins": {
"CapacitorUpdater": {
"autoUpdate": false
}
}
}
If an update fails, here’s what you can do:
- Set
autoUpdatetofalseduring development. - Uninstall the app.
- Reinstall it with the corrected version.
- 安定した後、自動更新を再度有効にします。
メジャーバージョンアップデートの場合、フラグを使用し、更新を適切に処理するためにイベントをリスンします: disableAutoUpdateBreaking バージョンアップデートのイベントを処理するには、 majorAvailable バージョン管理のためのチームの強力な慣行を確立することで、バージョン一貫性を維持し、エラーを減らすことができます。
CapacitorUpdater.addListener('majorAvailable', (info) => {
console.log(`Major update available: ${info.version}`);
// Add your update prompt logic here
});
バージョン管理
個々の更新が管理された後、チームは強力なバージョン管理慣行を確立する必要があります。
Once individual updates are managed, it’s crucial for teams to establish strong version control practices.
“Testing each change before merging it with the main repository will reinforce stability and avoid costly errors” [4]
メインリポジトリとマージする前に各変更をテストすることで、安定性を強化し、費用のかかるエラーを回避することができます。
- 一貫性を確保するための方法は以下のとおりです。 メインリポジトリ メインリポジトリを定義し、真実の源として機能するようにします。
- 開発と運用環境用に別々のCapgoチャネルを使用してください。
- CI/CD Pipelinesを使用してバージョンアップロードを自動化してください。
- 明確で詳細なコミットメッセージで全てのcode変更をドキュメントしてください。
大規模なチームの場合、以下のバージョン管理マトリックスが更新を整理するのに役立ちます。
| 環境 | チャネル | 自動更新 | バージョンパターン |
|---|---|---|---|
| 開発 | dev | 無効 | 0.x.x |
| テスト環境 | ベータ版 | 有効 | __CAPGO_KEEP_0__-ベータ |
| 本番環境 | 安定版 | 有効 | __CAPGO_KEEP_0__ |
更新復旧手順
更新に十分な注意を払ったとしても失敗することがあります。そうなる場合は、以下の復旧手順に従ってください。
- 前の安定バンドルに戻す。
- バージョン番号をインクリメントして、修正の新しいバージョンを追加します (注: バージョン番号は削除後再利用できません) [2].
- 起動時、更新を確認して期待どおりに動作することを確認します。
Capgoのアップデートツールは、障害を処理するように設計されています。たとえば、サーバーがアクセスできない場合やアップデートが削除された場合、もはやアプリは正常に動作します。 [3]また、失敗したネットワークリクエストは、次のアプリ起動時に自動的に再試行されます。 [3]この組み込みの強度は、ダウンタイムを最小限に抑え、スムーズな運用を保証します。
概要
セマンティック バージョニングとCapgoの組み合わせにより、CapacitorアプリのOTA更新が効率化されました。947.6百万の更新が配信され、1,400の生産アプリがこのシステムを使用しているため、 [1]デプロイメントプロセスは81%効率化されました。 [1]この設定により、開発者はアップデートを迅速かつ制御された方法で実行できます。アプリストアの遅延を回避できます。
開発者が言っていること
“We rolled out CapgoのOTA更新をロールアウトしました。 生産環境でCapgoのユーザーベースに5000人以上を対象にしました。ほぼすべてのユーザーが、@Capgoにアップデートされた後、数分以内に最新バージョンにアップデートされました。 [1]
MAJOR.MINOR.PATCH バージョニングシステムにより、重大な変更、新機能、バグ修正を簡単に伝えることができます。 [5]特に、Capgoのプラットフォームを通じて毎週何度もリリースを管理するチームにとっては、非常に役立ちます。
Capgoの 暗号化されたソリューション, CI/CDツールと統合されているため、予算に優しい - 5年間で$26,100を節約する [1]カスタマイズ可能なチャネルにより、正しいユーザーに正しい時期に更新が届きます。
“We practice agile development and @Capgo is mission-critical in delivering continuously to our users!” - Rodrigo Mantica [1]