コンテンツにスキップ

コマンド

すべてのコマンドは、capacitor プロジェクトを適切に起動している状態で、プロジェクトのフォルダ内で実行してください。

npx @capgo/cli@latest init [apikey]

この方法は、ステップごとにあなたを導きます。

あなたのアプリをCapgoに追加します。codeをあなたのアプリに追加して、アップデートを検証します。さらに、アプリをビルドし、Capgoにアップロードします。アップデートが正常に動作するかどうかを確認します。

npx @capgo/cli login [apikey]

この方法は、 apikey あなたのために

オプションで、以下のいずれかを指定することができます。

--local この設定は、ローカルリポジトリに __CAPGO_KEEP_0__ を保存し、git で無視します。 APIキー Doctor

npx @capgo/cli doctor

Command to check if you are up-to-date with Capgo packages.

App

「App」セクション

追加

オプションで、以下のいずれかを指定することができます。

追加

npx @capgo/cli app add [appId]

[appId] __CAPGO_KEEP_0__の形式でアプリIDを入力してください。 com.test.app 詳細はこちら 💡.

すべてのオプションは、指定されていない場合、configファイルで推測されます。

オプションで指定することができます。

  • --icon [/path/to/my/icon] カスタムアイコンを表示するには、Capgo webアプリにアイコンを指定してください。
  • --name [test] リスト内のカスタム名を指定するには、
  • --apikey [key] APIキーを指定して、アカウントにリンクすることができます。
  • --retention [retention] アプリパッケージの保存期間(日数)、0(デフォルト)= 無限

appIdとAppNameの例 capacitor.config.json appIdとAppNameの場合、アイコンはリソースフォルダで推測されます。

{
"appId": "ee.forgr.capacitor_go",
"appName": "Capgo",
"webDir": "dist"
}

npx @capgo/cli app set [appId]

[appId] __CAPGO_KEEP_0__はアプリIDです。形式についてはここで説明しています。 ここ.

オプションで、以下のいずれかを指定できます。

  • --icon [/path/to/my/icon] CapgoのWebアプリでカスタムアイコンを表示したい場合は。
  • --name [test] __CAPGO_KEEP_0__のリスト名をカスタマイズしたい場合は。
  • --retention [retention] __CAPGO_KEEP_0__のアプリパッケージの保存期間(日数)、0(デフォルト)で無限です。
  • --apikey [key] APIのキーを指定してアカウントにリンクしたい場合は。

npx @capgo/cli app list [appId]

[appId] アプリ ID の形式は com.test.app はこちらで説明されています。 ここ.

オプションで、以下のキーを指定できます。

  • --apikey [key] API キーを指定すると、アカウントにリンクできます。

npx @capgo/cli app delete [appId]

[appId] アプリ ID の形式は com.test.app はこちらで説明されています。 ここ.

オプションで、以下のキーを指定できます。

  • --apikey [key] API キーを指定すると、アカウントにリンクできます。
  • --bundle バージョン番号を含む場合、このバージョンだけが削除されます。

npx @capgo/cli app debug [appId]

[appId] アプリIDのフォーマットはこちらで説明されています。 com.test.app ここ オプションで、__CAPGO_KEEP_0__ キーを指定してアカウントにリンクすることができます。.

特定のデバイスでデバッグする場合

  • --apikey [key] API key to link to your account.
  • --device 「設定」セクション

__CAPGO_KEEP_0__ 設定を編集してください。

__CAPGO_KEEP_0__

npx @capgo/cli app setting [path]

Edit the Capacitor config.

[path] - __CAPGO_KEEP_0__ の設定を変更したいパスを指定してください。例えば、自動更新を変更したい場合は appId, を指定してください。 appId 自動更新を無効にする場合は、 capacitor-updater を指定してください。 plugins.CapacitorUpdater.autoUpdate

自動更新を無効にする場合は、 --string を指定してください。 --bool!

は必須です。

  • --string <string> または
  • --bool <true | false> オプション:

- __CAPGO_KEEP_1__ を文字列として設定します。

- __CAPGO_KEEP_2__ を真偽値として設定します。

「Bundle」セクション

アップロードセクション

npx @capgo/cli bundle upload [appId]

[appId] __CAPGO_KEEP_0__はアプリケーションIDです。フォーマットについてはこちらで説明しています。 ここ.

オプションで、__CAPGO_KEEP_0__キーを指定してアカウントにリンクすることができます。

  • --apikey <apikey> API key to link to your account.
  • --path <path> リンクするチャンネル
  • --channel <channel> CloudflareのURLに代わって__CAPGO_KEEP_0__にアップロードする
  • --external <url> Link to external URL instead of uploading to Capgo Cloud.
  • --iv-session-key <key> S3エンドポイントのURL。デリタアップロードや外部オプションでは機能しません。
  • --s3-endpoint <s3Endpoint> S3バケットのリージョン
  • --s3-region <region> __CAPGO_KEEP_0__キーはS3エンドポイントのキーです。
  • --s3-apikey <apikey> S3エンドポイントのAPIキー
  • --s3-apisecret <apisecret> API のS3エンドポイント用のシークレット。
  • --s3-bucket-name <bucketName> AWS S3 バケットの名前。
  • --s3-port <port> S3 エンドポイントのポート。
  • --no-s3-ssl S3 アップロードのSSLを無効にする。
  • --key <key> パブリック署名キー (v1 システム) のカスタムパス。
  • --key-data <keyData> パブリック署名キー (v1 システム)。
  • --key-v2 <key> プライベート署名キー (v2 システム) のカスタムパス。
  • --key-data-v2 <keyData> プライベート署名キー (v2 システム)。
  • --bundle-url バンドル URL を標準出力に印刷します。
  • --no-key 署名キーを無視して明示的な更新を送信します。
  • --no-code-check ソース code とルートフォルダ内のインデックスが存在する場合、notifyAppReady() が呼び出されたかどうかを確認しない。
  • --display-iv-session 更新を暗号化するために使用される IV とセッション キーをコンソールに表示します。
  • --bundle <bundle> __CAPGO_KEEP_0__
  • --min-update-version <minUpdateVersion> __CAPGO_KEEP_0__
  • --auto-min-update-version __CAPGO_KEEP_0__
  • --ignore-metadata-check __CAPGO_KEEP_0__
  • --ignore-checksum-check __CAPGO_KEEP_0__
  • --timeout <timeout> __CAPGO_KEEP_0__
  • --delta __CAPGO_KEEP_0__
  • --delta-only __CAPGO_KEEP_0__
  • --no-delta __CAPGO_KEEP_0__ directUpdate __CAPGO_KEEP_0__
  • --tus __CAPGO_KEEP_0__
  • --multipart __CAPGO_KEEP_0__
  • --encrypted-checksum <encryptedChecksum> __CAPGO_KEEP_0__の暗号化チェックサム(署名)。アップロードする外部バンドル用にのみ使用します。
  • --package-json <packageJson> package.jsonへのパス。モノレポ用に便利です。
  • --auto-set-bundle capacitor.config.jsonにバンドルを設定します。
  • --node-modules <nodeModules> node_modulesへのパスの一覧(カンマ区切り)。モノレポ用に便利です(例:../../node_modules,./node_modules)

⭐️ 外部オプションは、2つのケースを解放します:企業がプライバシーを懸念している場合、codeを第三者に送信しない、または200MBを超えるアプリ。外部オプションの設定では、Capgoはzipへのリンクのみを保存し、すべてのアプリにリンクを送信します。

👀 Capgoのクラウドは、外部オプションの場合、リンク内の内容を、またはcodeが保存した内容を、見ることはありません。

🔑 Capgoを使用して、2層目のセキュリティを追加できます。Capgoは何も見ることはできず、変更することもできません。

package.json バージョン

{
"version": "1.0.2"
}

⛔ バージョンは“0.0.0”より大きくなければなりません。

💡 バージョン番号を毎回更新することを忘れないでください。バージョン番号は、削除後は再利用できず、上書きできません。

npx @capgo/cli bundle list [appId]

[appId] アプリ ID の形式はこちらで説明されています com.test.app ここで説明されています オプションで、__CAPGO_KEEP_0__ キーをアカウントにリンクすることができます.

削除

  • --apikey [key] API key to link to your account.

アプリ ID の形式はこちらで説明されています

ここで説明されています

npx @capgo/cli bundle delete [appId]

[appId] protectedTokens com.test.app targetLanguage texts.

任意に、以下の情報を指定できます:

  • --apikey [key] API キーを指定すると、アカウントにリンクされます。
  • --bundle バージョン番号を指定すると、このバージョンだけが削除されます。

メジャーバージョンに指定された SemVer の範囲で Cloudflare に送信します。

npx @capgo/cli bundle cleanup [appId] --bundle=[majorVersion] --keep=[numberToKeep]

[appId] アプリ ID の形式は、 com.test.app ここで説明されています。 任意に、以下の情報を指定できます:.

__CAPGO_KEEP_0__ キーを指定すると、アカウントにリンクされます。

  • --apikey [key] API key to link to your account.
  • --bundle [majorVersion] a version you wish to remove previous packages for, it will keep the last one + numberToKeep.
  • --keep [numberToKeep] __CAPGO_KEEP_0__ (default 4)

例えば、10.0.1 から 10.0.11 までの 10 バージョンがあって、 npx @capgo/cli cleanup [appId] --bundle=10.0.0 すると 10.0.1 から 10.0.6 までを削除し、10.0.7 から 10.0.11 までを残します。

バンドル番号を指定しない場合、 npx @capgo/cli cleanup [appId] --keep=2 すると 18 バージョンを削除し、最後の 2 バージョンを残します。

このコマンドは確認を求めます。削除と残すバージョンの表を表示します。

警告: このコマンドは廃止予定であり、次のメジャーリリースで削除されます。新しい暗号化システムを使用してください。 npx @capgo/cli bundle encrypt [path/to/zip]

このコマンドは、外部のソースで code を保存する場合やテストのために使用します。

オプションで、以下の値を指定できます:

--key [/path/to/my/private_key] プライベートキーのパスを指定します。 --key-data [privateKey] プライベートキーのデータを指定します。インラインで使用する場合。 ivSessionKeyコマンドは、y と暗号化された zip を生成し、アップロードコマンドまたは復号化コマンドと一緒に使用します。

npx @capgo/cli bundle encrypt [path/to/zip] [checksum]

このコマンドは、外部のソースで code を保存する場合やテストのために使用します。

チェックサムは、—key-v2 で生成されたバンドルのsha256です。復号化後にファイルの整合性を検証するために使用されます。

--key [/path/to/my/private_key] チェックサムはプライベートキーよりも暗号化され、バンドルと共に送信されます。 --key-data [privateKey] 暗号化v2では、チェックサムはバンドルの「署名」にアップグレードされます。 --json JSON形式で情報を出力する。 ivSessionKeyコマンドは、yと生成された暗号化されたzipを出力し、アップロードコマンドまたは復号化コマンドと組み合わせて使用することができます。

npx @capgo/cli bundle decrypt [path/to/zip] [ivSessionKey]

オプションとして、以下のいずれかを指定できます。

--key [/path/to/my/private_key] プライベートキーのパスを指定します。

--key-data [privateKey] インラインで使用したい場合は、プライベートキーのデータを指定します。このコマンドは主にテスト用途で使用され、zipを復号化し、コンソールにbase64で復号化されたセッションキーの出力を行います。

npx @capgo/cli bundle decryptV2 [path/to/zip] [ivSessionKey]

オプションとして、以下のいずれかを指定できます。

--key [/path/to/my/private_key] プライベートキーのパスを指定します。 --key-data [privateKey] インラインで使用したい場合は、プライベートキーのデータを指定します。このコマンドは主にテスト用途で使用され、zipを復号化し、コンソールにbase64で復号化されたセッションキーの出力を行います。 --checksum [checksum] __CAPGO_KEEP_0__

Zip

Zip

npx @capgo/cli bundle zip [appId]

[appId] __CAPGO_KEEP_1__ アプリIDです。形式については.

オプション

  • --path [/path/to/my/bundle] 特定のフォルダをアップロードする場合
  • --bundle [1.0.0] ファイル名のバンドルバージョン番号を設定する場合
  • --name [myapp] ファイル名をオーバーライドする場合
  • --json 情報をJSON形式で出力する場合
  • --no-code-check to ignore the code check and send the bundle anyway.
  • --key-v2 新しい暗号化システムを使用する場合。新しい暗号化システムでは、ファイルの完全性を検証するために、より良いチェックサムを使用します。

互換性

互換性

npx @capgo/cli bundle compatibility [appId] -c [channelId]

[appId] __CAPGO_KEEP_0__はアプリIDです。形式はこちらで説明しています。 ここ. [channelId] 新しいチャンネルの名前。

オプションで、以下の情報を指定できます。

  • --apikey [key] APIキーを指定して、自分のアカウントにリンクすることができます。
  • --text テーブルに絵文字を使用しないようにしてください。
  • --channel [channel] 互換性を確認するチャンネル名を指定してください。
  • --package-json <packageJson> モノレポ用のパッケージ.jsonへのパス。
  • --node-modules <nodeModules> モノレポ用のnode_modulesへのパスの一覧(カンマ区切り ex: ../../node_modules,./node_modules)。

npx @capgo/cli channel add [channelId] [appId]

[channelId] 新しいチャンネルの名前を追加してください。 [appId] アプリIDのフォーマットはこちらで説明されています。 com.test.app 削除 削除セクション.

削除したいチャンネルの名前を入力してください。

アプリIDのフォーマットはこちらで説明されています。

npx @capgo/cli channel delete [channelId] [appId]

[channelId] __CAPGO_KEEP_0__ [appId] __CAPGO_KEEP_1__ com.test.app __CAPGO_KEEP_2__ ここ.

npx @capgo/cli channel list [appId]

[appId] アプリ ID の形式は ここ で説明されています com.test.app ここで説明されている形式のアプリ ID オプションで、__CAPGO_KEEP_0__ キーをアカウントにリンクすることができます。.

設定

  • --apikey [key] API key to link to your account.

ここで説明されている形式のアプリ ID

ここで説明されている形式のアプリ ID

npx @capgo/cli channel set [channelId] [appId]

[appId] ここで説明されている形式のアプリ ID ここで説明されている形式のアプリ ID.

任意に、以下の情報を提供することができます:

  • --bundle [1.2.3] アプリケーションパッケージがすでにクラウドに送信されている場合、そのパッケージをチャンネルにリンクすることができます。
  • --latest パッケージバージョンを取得する package.json:version__CAPGO_KEEP_0__ cannot be used with __CAPGO_KEEP_1__ --bundle.
  • --state [ normal | default ] チャンネルの状態を設定することができます。 normal または default1 つのチャンネルは、 default.
  • --downgrade チャンネルがデバイスにダウングレード版を送信することを許可します。
  • --no-downgrade チャンネルがデバイスにダウングレード版を送信することを禁止します。
  • --upgrade チャンネルがデバイスにメジャーバージョンアップグレード版を送信することを許可します。
  • --no-upgrade チャンネルがデバイスにメジャーバージョンアップグレード版を送信することを禁止します。
  • --ios チャンネルがiOSデバイスにバージョンを送信することを許可します。
  • --no-ios __CAPGO_KEEP_0__ iOS機器にバージョンを送信することを許可しない。
  • --android __CAPGO_KEEP_0__ Android機器にバージョンを送信することを許可する。
  • --no-android __CAPGO_KEEP_0__ Android機器にバージョンを送信することを許可しない。
  • --self-assign このチャンネルに機器が自動的に割り当てられることを許可する。
  • --no-self-assign このチャンネルに機器が自動的に割り当てられることを許可しない。
  • --disable-auto-update STRATEGY このチャンネルの自動更新戦略を無効にする。可能なオプションは次のとおりです:メジャー、ミニマム、メタデータ、なし。
  • --apikey [key] API のアカウントにリンクするための API キー。

古いバージョンの更新を無効にする方法はいくつかあります。
Capgo は code を更新できません。したがって、古い code の Capgo から最新の code の Capgo に更新することはできません。 古いバージョンの更新を無効にする方法はいくつかあります。

最初の major アップデートを防ぐ戦略です。 0.0.0 -> 1.0.0。主な番号は、1。0.0.0と 0.0.0).
2番目の番号は minor アップデートを防ぐ戦略です。 0.0.0 -> 1.1.0 またはアップデート 1.1.0 から 1.2.0. 注意 この戦略はアップデートを防ぐことはできません。 0.1.0 -> 1.1.0

3番目に patch strategy. It was added into capgo as a very strict mode. It’s not recommended to be used unless you fully understand how it works. In order for it to accept a update the following conditions must be meet:

  • これは非常に厳密なモードで、__CAPGO_KEEP_0__ に追加されました。使用することをお勧めしません。
  • The new and old version is the same.
  • The new version's patch is greater than the old version's patch.

Here are the scenarios where the update is allowed or denied.

  • 0.0.311 -> 0.0.314 ✅
  • 0.0.0 -> 0.0.314 ✅
  • 0.0.316 -> 0.0.314 ❌
  • 0.1.312 -> 0.0.314 ❌
  • 1.0.312 -> 0.0.314 ❌

Lastly, the most complicated strategy is the metadata strategy.
First, you need to know that initially after enabling it, the updates WILL fail because the channel lacks the required metadata.
If the channel lacks metadata, you will see a message like this:

Metadata not found.

If you see something like this, you know that you have to go to the current bundle for the failing channel and set the metadata.
First, figure out which channel is failing. You can do that by looking at the misconfigured カラム

不正しく設定されたテーブル

次に、失敗したチャンネルに移動し、クリックしてください。 Bundle numberこれで、バンドルページに移動するはずです。

失敗したチャンネルを探してください

その場所で、以下のフィールドを埋めてください。 これは、 Minimal update version セマンティックバージョン 指定した値がセマンティックバージョンでない場合、エラーが発生しますが、すべてが正常に動作すれば、以下のような画面が表示されるはずです。.
最小バージョンを設定

このデータを手動で毎回設定したくない場合、幸いにも__CAPGO_KEEP_0__は、メタデータを送信しないようにアップデートを送信するのを防ぎます。

CLI メタデータなしでアップデートを送信すると失敗します

CLI

正しくバンドルをアップロードするには、オプションを使用する場合、 metadata __CAPGO_KEEP_0__ --min-update-version の形式で、有効なsemverを指定する必要があります。

CLIを含むメタデータ

は、唯一の互換性のための方法ではありません。 --min-update-version は、別の方法で互換性を実現するために使用できます。 --auto-min-update-versionのしくみはこちらです。

最初に、チャンネルにアップロードされているバージョンを確認します。互換性をチェックすることは bundle compatibility コマンドと同じです。 min_update_version 2番目に、新しいバージョンが完全に互換性がある場合、最新のバージョンから min_update_version を再利用します。

互換性がない場合は、 min_update_version このオプションを使用する場合、以下のような表示になります。

最小更新バージョン

新しいバージョンが互換性がない場合、以下のような表示になります。

エンドツーエンド暗号化(信頼できない)

Capgo supports end-to-end encryption, this means that your bundle(code) is encrypted before sent to the cloud and decrypted on the device. For that, you need to generate an RSA key pair, you can use the following command to generate it.

詳細については、以下の情報を参照してください。

暗号化のしくみ

暗号化スキーマ

アプリ用にキーペアを作成する

For that, you need to generate an RSA key pair, you can use the following command to generate it.

アプリのためのキーを作成

npx @capgo/cli key create

オプションで、 --force __CAPGO_KEEP_0__が既存のキーを上書きする場合に使用します。このコマンドは、アプリ内にキー ペアを作成し、プライベート キーを安全な場所に保存するように求めます。プライベート キーをgitコミットしないでください。また、誰にも共有しないでください。

ローカルテスト後、キーをconfigファイルから削除し、CIステップでキーを追加してください。 key save

アプリのconfigファイルにキーを保存

オプションで、

npx @capgo/cli key save

パブリック キー ファイルのパスを指定します。

--key [/path/to/my/public_key] パブリック キー データを指定します。インラインで使用する場合に使用します。このコマンドは、キーをアプリのconfigファイルにコミットしなかった場合に便利です。

--key-data [publicKey] CI統合

自動化を実現するには、__CAPGO_KEEP_0__アクションを使用して、サーバーにデータを送信するようにしてください。

CIステップでキーを追加してください。

To automate your work, I recommend you make GitHub action do the job of pushing to our server

GitHub アクションチュートリアル

GitHub - Cap-go/demo-app

API キーを使用して CI 環境変数を設定することを忘れないでください