アップデートの一般的な問題
インストールステップとこのプラグインの全体のマークダウンガイドを含むセットアッププロンプトをコピー
更新チェックが失敗した場合、Capgoは通常、 error codeと message の /updates レスポンスを返します。このページでは、最も一般的なエラーと最速の修正方法について説明します。
no_new_version_availableSync- 多くの “更新が見つかったが適用されなかった” の報告は、キャッシュの遅延ではなく、ポリシー/構成の拒否であることが多い、特に応答に明示的な
errorcode。 - 問題を再現する際に使用
npx @capgo/cli@latest app debug共通のエラー コード
共通のエラー コード
セクションprovider_infrastructure_request_blocked
セクション原因
アプリケーションは プロバイダーのインフラストラクチャ リクエストをブロック 有効になっており、リクエストは Google または Apple のデータセンター IP 範囲から発信されたものである。Capgo はこれらのリクエストを /updates, /stats、 /channel_self 提供元のトラフィックをデバイストラフィックとして扱うのを防ぐため。
修正
- 物理デバイスで通常のユーザー ネットワーク上でアップデートを再現する。
- この保護が有効の場合、アップデート、統計、チャンネル自体のチェックにクラウドホストされたプローブまたはプロバイダーデータセンター ランナーを使用しないでください。
- そのトラフィックが意図的である場合、 情報 タブを開き、 プロバイダーのインフラストラクチャ リクエストをブロックをオフにします。テストが完了したら再度有効にします。
新しいアプリでは、この保護がデフォルトで有効になっています。設定が導入される前に作成されたアプリでは、有効にするまでに有効になっていません。
詳細
/updatesアップデーターの応答契約を保持し、HTTP200Capgoの更新プログラムの一般的な問題error,message,kind: "blocked", andprovider("google", そして"apple")./statsまたは/channel_selfHTTP を返します429同様のエラーが code で発生します。 このエラーは、意図的なポリシーブロックとして扱ってください。再試行条件ではありません。
disable_auto_update_to_major
Capawesomeの代替Capawesomeの代替
Capgoのコンサルティングサービスdisable_auto_update = majorAppflowの代替
Appflowの代替
version: 1.0.8 with old: 0.0.0 デバイスがベースラインを報告することを意味します 0.0.0なので、主なアップグレードは拒否されます。
解釈方法
バックエンドは、デバイスのベースラインとターゲットの主なバージョンを比較します old と version.
- ターゲットが
1.0.1の場合、ベースラインの主なバージョンは1(例えば1.0.0). - ターゲットが
10.0.1の場合、ベースラインの主なバージョンは10(例えば10.0.0).
修正オプションA(推奨):デバイスのベースラインの主なバージョンを合わせる
セット plugins.CapacitorUpdater.version で capacitor.config.* その メジャー バンドルのメジャー 1.0.0 の 1.0.1, 10.0.0 の 10.0.1).
例えば
- の
npx cap sync. - 次に
この設定
をインストール済みアプリに適用する:
関連ドキュメント:
disable_auto_update_to_minor / disable_auto_update_to_patch
セクション: "disable_auto_update_to_minor / disable_auto_update_to_patch"原因
チャンネルポリシーが厳しいため (minor または patch)、提供される更新とは異なるため
minorメジャーバージョンまたはミニマムバージョンが異なるターゲットパッケージが存在する場合、version_build例えば1.2.3 -> 1.3.0はブロックされます。patchメジャー、ミニマム、またはパッチ番号の変更があればブロックされます。version_build. 末尾の変更のみが許可されます。MAJOR.MINOR.PATCHstays identical, such as1.0.0-beta.1 -> 1.0.0-beta.2or1.0.0+build.1 -> 1.0.0+build.2.
Fix
- Fix
- change channel policy in dashboard/CLI.
チャネルポリシーをダッシュボードで変更する
disable_auto_update_to_metadata
チャネル: 自動アップデート戦略を無効にする原因
チャネルはメタデータベースのターゲットを使用しversion_numberデバイスの基準は必要なものより低い min_update_version.
修正
- インストール済みネイティブアプリのバージョンとデバイスのベースラインを合わせる、または
CapacitorUpdater.version) - チャンネル戦略を調整する。
min_update_version関連ドキュメント:
チャンネル: Auto Update戦略を無効にする
disable_auto_update_under_native
原因Cause
ネイティブベースライン以上のバンドルバージョンをアップロードする、または
修正
- チャンネル戦略を調整する
- “native” ダウングレード保護をそのチャネルで無効にします。
関連するドキュメント:
cannot_update_via_private_channel
セクション “private チャネルでの更新ができない”原因
選択中またはデフォルトのチャネルでは、デバイスの自己割り当てが許可されていません。
解決策
- 別のチャネルを使用して、自己割り当てを有効にします、または
- チャネルを公開 / 自己割り当てを有効にします。
関連するドキュメント:
unknown_version_build / semver_error
セクション “unknown_version_build / semver エラー”原因
デバイスのベースラインバージョンが欠落している(unknown) または不正なsemver 修正.
設定
- Set
plugins.CapacitorUpdater.versionに 修正 似た1.2.3. - Syncとnativeアプリを再構築。
関連ドキュメント:
unsupported_plugin_version
セクション「非対応のプラグインバージョン」原因
アップデータプラグインのバージョンが現在のバックエンドの要件に適していません。
解決策
- アップグレード
@capgo/capacitor-updater. - 実行
npx cap sync. - ネイティブアプリを再構築してインストールしてください。
disabled_platform_ios / disabled_platform_android
プラグインの問題原因
プラットフォームではアップデートが無効になっています。
解決策
- プラットフォームの切り替えをチャンネルで有効にします。
disable_prod_build / disable_dev_build / disable_device / disable_emulator
「disable_prod_build / disable_dev_build / disable_device / disable_emulator」セクションのタイトル原因
チャンネルが現在のビルドタイプまたは実行時ターゲットを許可していません。
解決策
- チャンネル設定をテスト対象と合わせます。
allow_prod,allow_dev,allow_device,allow_emulator「key_id_mismatch」セクションのタイトル
key_id_mismatch
バンドルの暗号化キーとデバイスのキーが異なります。原因
アプリの設定とバンドルの暗号化フローで使用する暗号化キー/公開キーを同じにします。
解決策
- Section titled “disable_prod_build / disable_dev_build / disable_device / disable_emulator”
no_channel / null_channel_data
セクション「no_channel / null_channel_data」原因
デバイスに対して有効なチャネルが解決されませんでした。
対策
- クラウドのデフォルトチャネルを設定するか、
- set
defaultChannelデバイスのオーバーライドチャネルを割り当てる - 関連ドキュメント:
チャンネル
on_premise_app
セクション「on_premise_app」原因
バックエンドからHTTP 429が返されました。 on_premise_app。 これは3つの状況で発生します。
- App IDがCapgoに存在しない ——
app_idデバイスから送信された - は登録されていないため、バックエンドにはその記録がない。 — アプリは存在しますが、自主ホストの更新用に構成されています。したがって、Capgo クラウドエンドポイントはそれを提供しません。
- —— アプリが存在するが、自社ホストの更新用に構成されているため、__CAPGO_KEEP_0__クラウドエンドポイントはそれを提供しない。
組織プランがキャンセルされている
—— plugins.CapacitorUpdater.appId (in capacitor.config.ts)または、Capgo ダッシュボードに登録されているアプリ ID と一致しない場合、バックエンドは「不明なアプリ」と「オンプレミスアプリ」を区別できず、同じエラー code を返します。
修正
- 確認する
app_id完全に一致するように、Capgo ダッシュボードに表示されている値と一致させる必要があります (大文字小文字区別)。 - アプリがまだ登録されていない場合、以下のコマンドを実行してください。
npx @capgo/cli@latest app add. - アプリが意図的にオンプレミスに設定されている場合、
plugins.CapacitorUpdater.updateUrl自宅サーバーにアップデートエンドポイントを設定するのではなく、Capgo クラウドURLを使用します。 - クイック診断チェックリスト
セクション名:クイック診断チェックリスト
ビルド用のアプリ ID とチャネルが正しいことを確認してください。- 確認
- Confirm
CapacitorUpdater.versionインストール済みネイティブアプリのバージョンと一致します。 - 確認するチャンネルポリシー(
disable_auto_update)が意図されたロールアウトと一致します。 - 確認するプラットフォーム/ビルドのターゲットのスイッチがこのデバイスを許可しています。
- 実行
npx @capgo/cli@latest app debugand read backend error code.
比較コードプッシュステップ2
比較ステップビルドさらに助けが必要ですか?
トラブルシューティングCapgoを使用している場合 共通の更新問題 ネイティブ プラグインの作業を計画するには、 ネイティブ カパビリティを使用するには@capgo/capacitor-updaterを接続する Capgoを使用するには@capgo/capacitor-updater Capgo プラグイン ディレクトリ Capgo プラグイン ディレクトリを使用する Capacitor プラグインは Capgo によって提供されています。 Capgoの実装詳細については、Capacitor プラグインによって Capgo で管理されます。 プラグインを追加または更新する プラグインを追加または更新する Ionic Enterprise プラグインの代替 Ionic エンタープライズ プラグインの代替品の製品ワークフローについて。