コンテンツにスキップ

Auto Update

GitHub

このドキュメントでは、自動更新サーバーを実行する方法を説明します。

バンドルがHTTPSで配信されていることを確認し、サーバーがアプリがアップデートをダウンロードできるようにするためのCORSヘッダーが正しく設定されていることを確認します。 例えば、 https://myserver.com/app/updates/updates.json

バンドルを配信する方法がわかりませんか? Capgo Cloudを試してみるか、ここで例を参照してください:

に追加 updateUrl to your capacitor.config.json.

{
"plugins": {
"CapacitorUpdater": {
"updateUrl": "https://myserver.com/app/updates/updates.json",
}
}
}

アプリが開いたときに、プラグインはAPIにPOSTコールを実行し、以下のボディを送信します:

interface AppInfos {
"platform": "ios" | "android" | "electron",
"device_id": "UUID_of_device_unique_by_install",
"app_id": "APPID_FROM_CAPACITOR_CONFIG",
"custom_id": "your_custom_id_set_on_runtime",
"plugin_version": "PLUGIN_VERSION",
"version_build": "VERSION_NUMBER_FROM_NATIVE_CODE",
"version_code": "VERSION_CODE_FROM_NATIVE_CODE",
"version_name": "LAST_DOWNLOADER_VERSION" | "builtin"
"version_os": "VERSION_OF_SYSTEM_OS",
"is_emulator": boolean,
"is_prod": boolean,
}

APIサーバーは、JSON形式でcapacitor-updater プラグインに応答する必要があります。必要な場合は、バージョンを比較して正しいバージョンを返す必要があります:

{
"version": "1.2.3",
"url": "https://myserver.com/app/updates/my-new-app-2.0.0.zip",
"checksum": "sha256_checksum_of_bundle"
}

自動更新モードでは、サーバーはバージョンを比較し、正しいバージョンを返し、URLキーが存在する場合、ダウンロードプロセスを開始します。

「message」と「error」キーを追加すると、バージョンは設定されず、ログにメッセージが表示されます。

version __CAPGO_KEEP_0__コマンドを使用して、バンドルをzipできます。 semver フォーマットでなければなりません。

zipファイルには、rootディレクトリのファイルとしてまたはrootディレクトリ内の1つのフォルダのみが必要です。 index.html zipファイル内の index.html バンドルに含めるファイルを選択して、サーバーから配信するためのバンドルを作成します。

You can use the command of the CLI to zip your bundle:

バンドルチェックサムを生成
npx @capgo/cli bundle zip --path [/path/to/my/bundle]

key should be in Capgo CLI を使用して、バンドル zip ファイルを作成する必要があります。 Capgo プラグインでは、特定の zip 形式と構造が保証されるのは、公式の CLI ツールを使用する場合のみです。標準の zip ユーティリティでは、互換性のないアーカイブを作成する可能性があります。

バンドルのチェックサムを生成するには、 Capgo CLI zip コマンドを使用してください。 --json フラグ:

チェックサム情報を含むバンドルを作成する
npx @capgo/cli bundle zip [appId] --json

このコマンドは次のことを行います。

  • Capgo プラグインに互換性のある形式で zip ファイルを作成します。
  • SHA256 チェックサムを生成して、整合性の確認を行います。
  • JSON形式でバンドル情報を出力します。

例出力:

{
"version": "1.2.3",
"checksum": "a1b2c3d4e5f6789...",
"size": 1234567
}

を使用します checksum この出力値をAPIに返信して、プラグインがインストール前にバンドルの整合性を検証できるようにします。

Auto Updateから続けて

「Auto Updateから続けて」

「__CAPGO_KEEP_0__」を使用している場合 Auto Update Auto Updateを使用して、企業の運用と移行の計画に接続する @capgo/capacitor-updater 「@capgo/capacitor-updater」を使用したネイティブ機能 Capgo Enterprise 「Capgo Enterprise」を使用した製品ワークフロー Ionic Enterprise Plugin Alternatives 「Ionic Enterprise Plugin Alternatives」を使用した製品ワークフロー Capgo の代替 Capgo の代替の製品ワークフローについて Capgo のコンサルティング Capgo のコンサルティングの製品ワークフローについて