スタートガイド
インストール手順と、このプラグインの完全なMarkdownガイドを含むセットアッププロンプトをコピーします。
Set up this Capacitor plugin in the project.
Use the package manager already used by the project.
Install these package(s): `@capgo/capacitor-updater`
Run the required Capacitor sync/update step after installation.
Read this markdown guide for the full setup steps: https://raw.githubusercontent.com/Cap-go/website/refs/heads/main/apps/docs/src/content/docs/docs/plugins/updater/getting-started.mdx
Use that guide for platform-specific steps, native file edits, permissions, config changes, imports, and usage setup.
If that guide references other docs pages, read them too.
インストール
「インストール」セクションAIアシストによるセットアップでプラグインをインストールできます。以下のコマンドを使用して、お使いのAIツールに Capgo のスキルを追加してください:
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-plugins次に、以下のプロンプトを使用します:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-updater` plugin in my project.手動セットアップを希望する場合は、以下のコマンドを実行してプラグインをインストールし、下記のプラットフォーム別の手順に従ってください:
bun add @capgo/capacitor-updaterbunx cap syncyarn add @capgo/capacitor-updaterbunx cap syncpnpm add @capgo/capacitor-updaterbunx cap syncbun add @capgo/capacitor-updaterbunx cap syncクイックスタート
「クイックスタート」というタイトルのセクションほとんどのユーザーには、以下の メインのクイックスタートガイド を参照することをお勧めします。これにはプラグインのインストールと Capgo のクラウド連携の両方が含まれています。
このガイドでは、仕組みの詳細な理解やセルフホストによるアップデートの実装を目指す上級者向けに、プラグインの技術的な詳細を解説します。
Capacitor Updaterプラグインを使用すると、Capacitor アプリケーションにOTA(Over-the-Air)アップデートが可能になります。これにより、アプリストアの審査を通さずにアップデートを配信できます。
仕組み
「仕組み」セクション- Bundleのダウンロード: プラグインがアップデート用のbundle(Webアセットを含むZIPファイル)をダウンロードします
- 展開: bundleがデバイスのストレージに展開されます
- ホットリロード: アプリを再起動することなく、新しいbundleに切り替わります
- フォールバック・アップデートに失敗した場合、アプリは以前の正常に動作していたバージョンにロールバックされます
利用モード
「利用モード」セクション1. 自動アップデートモード(推奨)
「1. 自動アップデートモード(推奨)」セクション自動アップデート管理機能を利用した、最もシンプルなプラグインの使用方法:
import { CapacitorUpdater } from '@capgo/capacitor-updater';
// Plugin handles everything automatically// Configure in capacitor.config.ts以下を capacitor.config.ts:
{ plugins: { CapacitorUpdater: { autoUpdate: 'atBackground', updateUrl: 'https://your-update-server.com/api/updates' } }}2. マニュアルモード
「2. マニュアルモード」セクションアップデートプロセスを詳細に制御する場合:
import { CapacitorUpdater } from '@capgo/capacitor-updater';
// Download an updateconst bundle = await CapacitorUpdater.download({ url: 'https://your-server.com/updates/v1.0.1.zip', version: '1.0.1'});
// Set the bundle (will be used on next app start)await CapacitorUpdater.set({ id: bundle.id});
// Or reload immediatelyawait CapacitorUpdater.reload();プラットフォーム設定
「プラットフォーム設定」というタイトルのセクションiOSと
「iOS」セクション追加の設定は不要です。プラグインはすぐに利用可能です。
Android
「Android」セクション追加の設定は不要です。プラグインはすぐに利用可能です。
基本的な API の使い方
「基本的な API の使い方」というタイトルのセクションUpdateをダウンロード
「Updateをダウンロード」というセクションimport { CapacitorUpdater } from '@capgo/capacitor-updater';
const bundle = await CapacitorUpdater.download({ url: 'https://example.com/update.zip', version: '1.0.1'});
console.log('Downloaded bundle:', bundle.id);アクティブなBundleを設定
「アクティブなBundleを設定」というセクション// Set bundle to be used on next app startawait CapacitorUpdater.set({ id: bundle.id});新しいBundleでリロード
「新しいBundleでリロード」というセクション// Reload app immediately with new bundleawait CapacitorUpdater.reload();Bundle一覧を表示
「Bundle一覧を表示」というセクションconst { bundles } = await CapacitorUpdater.list();console.log('Available bundles:', bundles);Bundleの削除
「Bundleの削除」というセクションawait CapacitorUpdater.delete({ id: 'bundle-id'});現在のBundleを取得
「現在のBundleを取得」というセクションconst { bundle } = await CapacitorUpdater.current();console.log('Current bundle:', bundle.version);イベントリスナー
「イベントリスナー」というセクションアップデートイベントをリッスンする:
import { CapacitorUpdater } from '@capgo/capacitor-updater';
// Listen for download progressCapacitorUpdater.addListener('download', (info) => { console.log('Download progress:', info.percent);});
// Listen for download completionCapacitorUpdater.addListener('downloadComplete', (bundle) => { console.log('Download complete:', bundle.version);});
// Listen for update failuresCapacitorUpdater.addListener('updateFailed', (error) => { console.error('Update failed:', error);});
// Listen for successful updatesCapacitorUpdater.addListener('updateAvailable', (info) => { console.log('Update available:', info.version);});設定オプション
「設定オプション」というセクションプラグインを以下で設定します: capacitor.config.ts:
{ plugins: { CapacitorUpdater: { // Auto-update settings autoUpdate: 'atBackground', updateUrl: 'https://api.example.com/updates',
// Update behavior resetWhenUpdate: true,
// Version settings version: '1.0.0',
// Security allowModifyUrl: false,
// Stats collection statsUrl: 'https://api.example.com/stats',
// Channel (for Capgo cloud) defaultChannel: 'production' } }}Capgo Cloud の場合
「With Capgo Cloud」セクション最も簡単な開始方法:
// Install the Capgo CLIbun add -g @capgo/cli
// Login to Capgonpx @capgo/cli login
// Upload your first bundlenpx @capgo/cli bundle upload
// The plugin auto-updates from Capgo cloud詳細については、 メインのQuickstartガイド をご覧ください。
セルフホストアップデート
「セルフホストによるアップデート」セクション独自のアップデートサーバーをホストする:
// Configure your update endpoint{ plugins: { CapacitorUpdater: { autoUpdate: 'atBackground', updateUrl: 'https://your-server.com/api/check-update' } }}サーバーは以下の内容を返す必要があります:
{ "version": "1.0.1", "url": "https://your-server.com/updates/1.0.1.zip"}詳細は セルフホストモード の詳細についてはこちらを確認してください。
手動アップデートフロー
「手動アップデートフロー」セクションアップデートを完全に制御:
import { CapacitorUpdater } from '@capgo/capacitor-updater';
async function checkAndUpdate() { // Check for updates from your server const response = await fetch('https://api.example.com/check-update'); const { version, url } = await response.json();
// Download the update const bundle = await CapacitorUpdater.download({ url, version });
// Notify bundle is ready await CapacitorUpdater.notifyAppReady();
// Set as next version await CapacitorUpdater.set({ id: bundle.id });
// Reload when ready await CapacitorUpdater.reload();}ベストプラクティス
「ベストプラクティス」セクション- 必ず呼び出すこと
notifyAppReady()アプリの読み込みが正常に完了したとき - 本番環境へ反映する前に、アップデートを十分にテストしてください
- ネットワークエラーに対する適切なエラーハンドリングを実装してください
- バージョン番号は一貫性を持って使用してください
- ダウンロードを高速化するため、bundleサイズを小さく保ってください
- アップデートの成功率をモニタリングしてください
次のステップ
「次のステップ」セクション- Plugin API リファレンス - API のドキュメントを完了する
- プラグイン設定 - すべての構成オプション
- イベント - 利用可能なアップデートイベント
- セルフホストモード - 独自のアップデートサーバーを運用する
- ローカル開発 - ローカルでアップデートをテスト
- デバッグ - トラブルシューティングガイド
サポート
「サポート」セクション- 既知の問題 - よくある問題と解決策
- GitHub ディスカッション - コミュニティサポート
- Discord - リアルタイムチャット
Getting Startedの続きを進める
「Getting Started からの続き」セクション使用している場合 スタートガイド ネイティブプラグインの作業を計画するには、次と連携してください: @capgo/capacitor-updater を使用する 「@capgo/capacitor-updater を使用する」のネイティブ機能については、 Capgo プラグインディレクトリ Capgo プラグインディレクトリのプロダクトワークフローについては、 Capgo による Capacitor プラグイン Capgo による Capacitor プラグインの実装詳細については、 プラグインの追加または更新 プラグインの追加または更新における実装詳細については、および Ionic Enterprise プラグインの代替案 Ionic Enterprise プラグインの代替案におけるプロダクトワークフローについては。