メニューに進む

Capawesome Cloud から Capgo に移行する

⚡️ Capgo はチャンネル、バンドルクリーンアップ、ロールバック、アナリティクス、CLI のアップロードを自動化します。 このガイドを使用して、最小限の手順で移行し、必要に応じてカスタム動作を再作成することができます。

  1. Capawesome Cloud の既存の設定 (App ID、チャンネル、署名キー、CLI トークン) を収集して、後でアーカイブまたは監査することができます。
  2. Capgo プラグインをインストールし、Capawesome SDK を削除し、呼び出し CapacitorUpdater.notifyAppReady().
  3. オプションの動作を設定 (手動ダウンロード、バンドルピン、リロード) する必要があります。 これらのフローに依存している場合

CapgoでCapgoを実行する必要があります。 CapacitorUpdater.notifyAppReady()CapgoでCLIを実行する必要があります。

Capgoで__CAPGO_KEEP_0__を実行する必要があります。

Capgoで__CAPGO_KEEP_0__を実行する必要があります。
  • CapgoでCapacitorを実行する必要があります。
  • Install the Capgo CLI (npm install -g @capgo/cliCapgoで__CAPGO_KEEP_0__を実行する必要があります。

Step 1 – Install Capgo and remove the Capawesome SDK

Section titled “Step 1 – Install Capgo and remove the Capawesome SDK”
Capgoで__CAPGO_KEEP_0__を実行する必要があります。
npm uninstall @capawesome/capacitor-live-update
npm install @capgo/capacitor-updater
npx cap sync

That is the only mandatory swap. Capgo’s native code ships with the plugin; no extra JavaScript helpers are required.

ステップ 2 – 最小構成

「ステップ 2 – 最小構成」

前のセットアップでは、数十のオプションをマッピングする必要がありました。 capacitor.configCapgoは、プロジェクトを自動的に認識するため、最小構成は次のようになります。

capacitor.config.ts
import { CapacitorConfig } from '@capacitor/cli'
const config: CapacitorConfig = {
plugins: {
CapacitorUpdater: {
autoUpdate: true,
autoDeletePrevious: true,
periodCheckDelay: 10 * 60 * 1000, // optional: check every 10 minutes
},
},
}
export default config

Capawesomeがリストするすべての手動フラグ(、保持ポリシーなど)は、__CAPGO_KEEP_0__ ダッシュボードまたは__CAPGO_KEEP_1__で管理されます。defaultChannel, autoDeleteBundles, retention policies, etc.) is managed through the Capgo dashboard or API. You only need to override these keys if you want behaviour that differs from Capgo’s defaults.

「構成のクイックリファレンス」

Capawesomeオプション
__CAPGO_KEEP_0__の同等Capgo equivalent必要ですか?
appIdCapgoプロジェクトを作成すると、ダッシュボードから取得します。1つのバイナリに複数のプロジェクトを使用する場合のみ
defaultChannelAPIダッシュボードで管理されるチャネル規則オプションです。ほとんどのチームはサーバー側で設定します。
autoDeleteBundlesautoDeletePrevious: true (デフォルト)既に有効
publicKeyCapgoコンソールで管理キーを手動で回転する場合のみ
maxVersions /保持バンドル保持ポリシーCapgoで中央に設定 (1 か月のデフォルト、24 か月の最大)

Step 3 – __CAPGO_KEEP_0__ を呼び出す notifyAppReady() (必要な唯一のハック)

セクション「Step 3 – __CAPGO_KEEP_0__ を呼び出す (必要な唯一のハック)」

古いワークフローではカスタムリスナーを使用し (checkForUpdates(), retryDownload(), hiding the splash screen, etc.). Capgo performs those steps natively. The only API you must call is:

import { CapacitorUpdater } from '@capgo/capacitor-updater'
CapacitorUpdater.notifyAppReady()

This confirms the app booted successfully. If the confirmation never arrives, Capgo automatically rolls back the bundle—no extra JavaScript needed.

アプリが正常に起動したことを確認します。この確認が来ない場合は、 Capgo は自動的にバンドルをロールバックします—追加の JavaScript が必要ありません。

それだけです— __CAPGO_KEEP_0__ はバックグラウンドチェック、スプラッシュ画面の表示、ロールバックをネイティブで実行します。
import { CapacitorUpdater } from '@capgo/capacitor-updater'
import { SplashScreen } from '@capacitor/splash-screen'
CapacitorUpdater.addListener('appReady', () => {
// Run diagnostics or logging if you need to
SplashScreen.hide()
})
CapacitorUpdater.notifyAppReady()

In Capgo であれば、通常、自動アップデートを実行しますが、APIは手動で利用できます。

Capawesome CloudCapgo の同等必要ですか?
LiveUpdate.fetchLatestBundle()CapacitorUpdater.getLatest()ダウンロードワークフローを実装する場合のみ
LiveUpdate.downloadBundle()CapacitorUpdater.download()オプション:ネイティブの自動アップデートは既にダウンロードしています
LiveUpdate.setNextBundle()CapacitorUpdater.next()オプション:ダッシュボードは自動でバンドルを固定します
LiveUpdate.reload()CapacitorUpdater.reload()オプション;Capgoは、必須のバンドルを強制します。 notifyAppReady()
LiveUpdate.getCurrentBundle()CapacitorUpdater.current()オプション:診断

Capawesome JavaScriptを削除する場合は、ネイティブの自動アップデートの挙動に従うことができます。

手動コントロールの例

手動コントロールの例

最新のバンドルをダウンロード

Capgo
import { CapacitorUpdater } from '@capgo/capacitor-updater'
const downloadUpdate = async () => {
const latest = await CapacitorUpdater.getLatest()
if (latest?.url) {
const bundle = await CapacitorUpdater.download({
url: latest.url,
version: latest.version,
})
console.log('Bundle downloaded', bundle?.id)
}
}
Capawesome Cloud
import { LiveUpdate } from '@capawesome/capacitor-live-update'
const downloadUpdate = async () => {
const result = await LiveUpdate.fetchLatestBundle()
if (result.downloadUrl) {
await LiveUpdate.downloadBundle({
bundleId: result.bundleId,
url: result.downloadUrl,
})
console.log('Bundle downloaded')
}
}

次のバンドルを設定

Capgo
import { CapacitorUpdater } from '@capgo/capacitor-updater'
const setNextBundle = async () => {
await CapacitorUpdater.next({ id: 'bundle-id-123' })
}
Capawesome Cloud
import { LiveUpdate } from '@capawesome/capacitor-live-update'
const setNextBundle = async () => {
await LiveUpdate.setNextBundle({ bundleId: 'bundle-id-123' })
}

すぐにダウンロードしたバンドルを適用

Capgo
import { CapacitorUpdater } from '@capgo/capacitor-updater'
const applyUpdate = async () => {
await CapacitorUpdater.reload()
}
Capawesome Cloud
import { LiveUpdate } from '@capawesome/capacitor-live-update'
const applyUpdate = async () => {
await LiveUpdate.reload()
}

ステップ 5 – アップデート戦略: Capgo がどのように対応するか

ステップ 5 – アップデート戦略: Capgo がどのように対応するか

Capawesome は 3 つの戦略を記述しています。 それらはどのように翻訳されるかを以下に示します。

バックグラウンド アップデート

バックグラウンド アップデート
  • 前のワークフロー: code で設定して、ダウンロードを手動でスケジュールする。
  • : Capgoコンテキスト: HTML テキスト フラグメント (親キー `submitting_a_pr_to_capgo`). ページ/エリア: Capgo マーケティング ウェブサイト。役割: ウェブサイト コピー文。見られる場所: contributing.astro ページ。Capgo の製品/ブランド名と開発者用語を完全に保持する。メッセージキー `submitting_a_pr_to_capgo` (Capgo への PR 提出)。autoUpdate: true. No additional code required.
  • 前のワークフロー: add an App.resume リスナーを追加し、呼び出し download, すると set.
  • Capgoコンテキスト:Capgo UIの長い文字列からHTMLテキストフラグメント (親キー `submitting_a_pr_to_capgo`). Webサイト:Capgoのマーケティングサイト。役割:ウェブサイトのコピー。ページ:contributing.astro。Capgo製品/ブランドと開発者用語を完全に保持する。
: 背景の自動更新は、再開後すぐにチェックを実行します。手動のリスナーが必要なのは、カスタムのインターバルを実行したい場合のみです。
import { App } from '@capacitor/app'
import { CapacitorUpdater } from '@capgo/capacitor-updater'
App.addListener('resume', async () => {
const latest = await CapacitorUpdater.getLatest()
if (latest?.url) {
const downloaded = await CapacitorUpdater.download({
url: latest.url,
version: latest.version,
})
if (downloaded) {
await CapacitorUpdater.next({ id: downloaded.id })
}
}
})

クリップボードにコピーする

強制更新
  • 前のワークフロー: wire prompt logic and enforce reload.
  • CapgoCapgoへのプルリクエストの提出 majorAvailable : マークする notifyAppReady()イベント (

) を待ち、ユーザーにアプリ内でアップグレードするように求める

ステップ 6 – バンドルを配布する

ステップ 6 – バンドルを配布する capawesome live-update deploy, Capgo offers a similar CLI workflow, and you can also automate deployments entirely via API.

__CAPGO_KEEP_0__ を使用していた場合、 __CAPGO_KEEP_1__ ワークフローも提供されます。また、 __CAPGO_KEEP_2__ を使用して完全に自動化されたデプロイも可能です。
# Authenticate once (stores a token in your CI environment)
capgo login
# Upload a new bundle (auto-detects platform/version)
capgo bundle upload --path dist --channel production

Because Capgo tracks bundle health automatically, you also get:

  • デバイス毎のインストールログ
  • 自動的な保持期間(1か月がデフォルト)で、24か月までの制限を設定できます。
  • リアルタイムの遅延メトリクスは status.capgo.app/history.

移行計画

「移行計画」
  • インベントリ&インストール10分(古いプラグインを削除)npm install設定&準備
  • status.__CAPGO_KEEP_0__.app/history: 5 分 (notifyAppReady).
  • Sanity checks: 15 分 (オプションのマニュアルテストまたはリスナー)。
  • 初回デプロイ: 10 minutes with Capgo CLI or CI integration.

: 10 分で __CAPGO_KEEP_0__ __CAPGO_KEEP_1__ または CI 統合が可能です。

Capgo support

Capgo サポート

Capgoは長期的な信頼性に設計されています:ネイティブのデルタ更新、暗号化されたバンドル、自動ロールバック、およびカスタムJavaScriptが必要ない分析。マイグレーション後は、メンテナンスが重い接着剤を削除して、プラットフォームが自動的に更新を実行できるようにします。

Capawesome Cloudを使用している場合 Capawesome CloudからCapgoに進む CI/CDの自動化を計画するには、__CAPGO_KEEP_0__ CI/CD Capgo CI/CD Capgo CI/CDの製品ワークフロー Capgoネイティブビルド Capgoの製品ワークフロー向け Capgo統合 Capgoの製品ワークフロー向け CI/CD統合 __CAPGO_KEEP_0__アクション統合 GitHub for the implementation detail in GitHub Actions Integration.