メインコンテンツにスキップ

デルタアップデート

Capgoのライブアップデートシステムは、変更されたファイルのみを送信することで、JSバンドル全体を送信するのではなく、更新をより速く効率的に提供できる。

特に、スローやメトロッドネットワーク接続のユーザーにとっては、ダウンロードする必要があるデータの量を最小限に抑えることで、特に有利である。

A second benefit is when the app has large assets that change rarely, like images or videos, compared to zipped JS files, it will be downloaded only once.

How Delta (Manifest) Updates Work

How Delta (Manifest) Updates Work

Delta (manifest) updates in Capgo are handled by the Capgo plugin installed in your app. When you upload a new version of your app using the --delta flag, Capgo does the following:

  1. Checksums are generated for each file
  2. A new JSON manifest is created, listing all files and their checksums
  3. This manifest is uploaded to the Capgo database
  4. This manifest is uploaded to the Capgo database

When a device running your app checks for an update, the Capgo plugin receives the new manifest from the server. It compares this manifest to the one it currently has, identifying which files have changed based on the checksums and file paths.

Differential (manifest)

デルタ(マニフェスト)の更新を有効にする

「デルタ(マニフェスト)の更新を有効にする」のセクション

Capgoアプリのためにデルタ(マニフェスト)の更新を有効にするには、単に次の旗を使用して新しいバージョンをアップロードしてください: --delta ターミナルウィンドウ

コピー
npx @capgo/cli@latest bundle upload --delta

__CAPGO_KEEP_0__がインスタントアプリケーションモードに設定されている場合(「」または「」)、 autoUpdate です。"atInstall", "onLaunch", or "always") in your capacitor.config、CLIはそれを検出します。非対話型環境では、Delta(マニフェスト)アップデートを自動的に送信し、対話型環境ではアップロードする前に確認を求めるよう指示します。 directUpdate レガシーコンフィグはまだ検出されます。 --no-delta __CAPGO_KEEP_0__を使用して、完全なバンドルアップロードを強制します。

Deltaアップデートの制限事項

Deltaアップデートの制限事項
  • 空のファイル: CLIはログを記録し、Deltaマニフェストからゼロバイトファイルを除外します。アップロードを中断せずに、結果のバンドルを変更する可能性があるため、空のファイルをDeltaバンドルパスに含めないでください。 Ignoring empty file... パス内のスペース:
  • Deltaアップロードは、バンドルパスにスペースが含まれている場合にアップロードする前にファイルをアップロードすることを失敗させます。スペースを削除するためにファイルまたはディレクトリを再命名するか、Deltaアップデートをアップロードする前にスペースを削除してください。 Delta(マニフェスト)アップデートの強制

Delta(マニフェスト)アップデートの強制

Deltaアップデートの制限事項

すべてのアップロードがDelta(マニフェスト)更新であることを保証し、誤ってフルバンドルアップロードを防止したい場合は、 --delta-only フラグ:

ターミナルウィンドウ
npx @capgo/cli@latest bundle upload --delta-only

使用される場合、__CAPGO_KEEP_0__は個々のファイルのみをアップロードし、マニフェストを生成します。Delta(マニフェスト)更新をサポートしていないデバイスはアップデートをダウンロードできません。 --delta-only is used, Capgo will only upload individual files and generate a manifest. Any device that does not support Delta (manifest) updates will not be able to download the update.

常にDelta(マニフェスト)更新を使用し、フルバンドルアップロードを許可したくない --delta-only CI/CDパイプラインを設定し、すべての自動アップロードがDelta(マニフェスト)更新であることを保証したい

  • アプリケーションが大きく帯域幅が制限されているため、アップロード/ダウンロードサイズを最小限に抑えたい
  • フルバンドルアップロードを実行する必要がある場合
  • Your app is large and bandwidth is constrained, so you need to minimize upload/download sizes

If you need to do a full bundle upload while --delta-only を設定した場合、単にアップロードコマンドを実行してください。 --delta-onlyが設定されている場合、単にアップロードコマンドを実行してください。この設定は、必要に応じて完全なバンドルをプッシュするために、1回のアップロードのみにオーバーライドされます。

トラブルシューティング

「トラブルシューティング」

Delta (マニフェスト) のアップデートが機能しないように見えます (例えば、デバイスは常に小さな変更にも対処するためにフル JS バンドルをダウンロードしています)。

  • の使用を確認してください。 --delta のフラグを毎回アップロードする新しいバージョンごとに設定してください。
  • の場合、 --delta-onlyのフラグを含めてアップロードしてください。 --delta のバージョンが最新であることを確認してください。
  • Your device is running the latest version of the Capgo plugin
  • Your device has a stable network connection and can reach the Capgo servers

You can also use the Capgo webapp to check the details of your last upload:

  1. Capgoの ウェブアプリ
  2. アプリをクリック
  3. 統計バーの
  4. バンドル数
  5. 最後のバンドルを選択 Partial バンドルタイプ 続けて問題が発生する場合は、Capgoのサポートに連絡してください。サーバーログを確認して、デバイスが更新されたマニフェストを受信していることを確認できます。

If you continue to have trouble, please reach out to Capgo support for further assistance. They can check the server logs to confirm that your Delta (manifest) uploads are being processed correctly and that devices are receiving the updated manifests.

__CAPGO_KEEP_0__ --delta Capgo

Capgoを使用するには、Cloudflareのキャッシュを無効にする必要があります。 --delta アップロードするたびに、Delta (マニフェスト) アップデートとして配信したい新しいバージョンをアップロードするたびに。フラグを省略すると、Capgo は、すべての JS バンドルを 1 つのファイルとしてアップロードし、デバイスは、変更された部分が小さくても、すべてのバンドルをダウンロードすることになる。

Deltaアップデートから続けて

Deltaアップデートから続く

Capgoを使用している場合、ライブアップデートの差分を確認できます。 Deltaアップデート ライブアップデートの配信計画を立てるには、それを接続する Capgo ライブアップデート for the product workflow in Capgo Live Updates, ライブアップデートの差分 概要の実装詳細について 機能 Capgoの機能詳細の実装について アップデートの動作 アップデートの動作の実装詳細について、そして アップデートの種類 アップデートの種類の実装詳細について。