Lompat ke konten

Masalah Pembaruan Umum

GitHub

Ketika cek update gagal, Capgo biasanya mengembalikan sebuah error code dan sebuah message dalam /updates Respons ini. Halaman ini menjelaskan gagal umum dan perbaikan paling cepat.

  • no_new_version_available adalah keadaan normal, bukan gagal.
  • Banyak laporan “ditemukan tetapi tidak diterapkan” adalah penolakan kebijakan/konfigurasi daripada keterlambatan cache, terutama ketika respons mencakup __CAPGO_KEEP_0__ yang eksplisit. error code.
  • Use npx @capgo/cli@latest app debug Sambil mengulangi masalah untuk melihat detail permintaan/respon.

provider_infrastructure_request_blocked

Masalah Pemberi Layanan Infrastruktur Diblokir

Penyebab

Aplikasi Anda telah Menghalangi permintaan infrastruktur penyedia Dapat diaktifkan dan permintaan berasal dari rentang alamat IP pusat data Google atau Apple yang dikenal. Capgo menghalangi permintaan-permintaan ini pada /updates, /stats, and /channel_self Mencegah lalu lintas yang berasal dari penyedia untuk dianggap sebagai lalu lintas perangkat.

Fix

  • Reproduksi pembaruan dari perangkat fisik di jaringan pengguna biasa.
  • Jangan menggunakan probe-hosted cloud atau runner datacenter penyedia untuk pembaruan, statistik, atau pengecekan channel-self saat proteksi ini diaktifkan.
  • Jika itu lalu lintas itu sengaja, buka aplikasi Anda dan matikan tekan tombol tab dan matikan Menghalangi permintaan infrastruktur penyedia. Aktifkan kembali ketika tes selesai.

Apps baru memiliki perlindungan ini diaktifkan secara default. Apps yang dibuat sebelum pengaturan diperkenalkan tetap dinonaktifkan sampai Anda mengaktifkannya.

Detail Respon

  • /updates mengemukakan kontrak respon pembaruan dan mengembalikan HTTP 200. Tubuhnya mencakup error, message, kind: "blocked", dan provider ("google" atau "apple").
  • /stats context /channel_self kembali HTTP 429 Dengan kesalahan yang sama code. Tindakan ini dianggap sebagai kebijakan pemblokiran sengaja, bukan kondisi ulang sementara.

disable_auto_update_to_major

Disable Auto Update ke Versi Utama

Cause

Masalah umum pada pembaruandisable_auto_update = major) dan versi bundle target utama lebih tinggi dari versi dasar perangkat.

artinya perangkat melaporkan versi dasar

version: 1.0.8 with old: 0.0.0 Bagaimana cara memahaminya 0.0.0Major pembaruan seringkali ditolak.

Cara Membaca Informasi

Backend membandingkan versi utama menggunakan basis perangkat old dan target version.

  • Jika target adalah 1.0.1baseline major harus 1 versi target 1.0.0).
  • If target adalah 10.0.1, baseline major harus adalah 10 (for example 10.0.0).

Fix opsi A (direkomendasikan): sesuaikan target baseline major

Set plugins.CapacitorUpdater.version context capacitor.config.* jadi untuk Kemudian terapkan konfigurasi ini ke aplikasi yang terpasang sekali: 1.0.0 di 1.0.1, 10.0.0 di 10.0.1).

Lalu aplikasikan konfigurasi ini ke aplikasi yang telah diinstal sekali:

  1. Jalankan npx cap sync.
  2. Rebuild dan reinstall aplikasi native.

Fix opsi B: lembagakan kebijakan saluran

Biarkan pembaruan otomatis lintas-maor di pengaturan saluran (hanya jika strategi peluncuran itu sengaja).

Referensi dokumen terkait:

disable_auto_update_to_minor / disable_auto_update_to_patch

Bagian berjudul “nonaktifkan_auto_update_to_minor / disable_auto_update_to_patch”

Penyebab

Kebijakan saluran lebih ketat (minor atau patchlebih dari update yang ditawarkan.

  • minor mengalami gangguan ketika bundle target memiliki versi mayor atau minor yang berbeda dengan baseline native perangkat (version_buildContoh: 1.2.3 -> 1.3.0 diblokir.
  • patch menghalangi perubahan nomor mayor, minor, atau patch dari version_buildSaat ini hanya perubahan sufiks yang diizinkan sementara MAJOR.MINOR.PATCH tetap identik, seperti 1.0.0-beta.1 -> 1.0.0-beta.2 atau 1.0.0+build.1 -> 1.0.0+build.2.

Fix

  • Unggah sebuah bundle yang kompatibel dengan kebijakan saat ini, atau
  • Ubah kebijakan saluran di dashboard/CLI.

Ganti kebijakan channel di dashboard/__CAPGO_KEEP_0__.

Pemicu

Saluran menggunakan target berdasarkan metadata (version_number) dan garis dasar perangkat di bawah yang diperlukan min_update_version.

Pembetulan

  • Sinkronkan garis dasar perangkat (CapacitorUpdater.version) dengan versi aplikasi native yang terpasang, atau
  • beri tahu min_update_version / strategi saluran.

Referensi terkait:

Pemicu

Saluran mencegah penurunan di bawah dasar garis native.

Fix

  • Unggah versi bundle yang sama atau lebih besar dari dasar garis native, atau
  • nonaktifkan perlindungan penurunan di bawah native untuk saluran tersebut.

Referensi Dokumen terkait:

Pemicu

Saluran yang dipilih/default tidak memungkinkan pengasasan perangkat sendiri.

Fix

  • Pilih saluran yang berbeda dengan pengasasan perangkat sendiri diaktifkan, atau
  • Membuat saluran publik / mengaktifkan penugasan sendiri.

Rujukan dokumen terkait:

Pemicu

Versi dasar perangkat hilang (unknown) atau tidak versi semver yang valid.

Solusi

  • Pilih plugins.CapacitorUpdater.version context versi semver yang valid seperti 1.2.3.
  • Sinkronkan dan bangun aplikasi native kembali.

Referensi dokumen terkait:

Penyebab

Versi plugin pembaruan terlalu tua untuk persyaratan backend saat ini.

Fix

  • Perbarui @capgo/capacitor-updater.
  • Jalankan npx cap sync.
  • Rebuild dan instal ulang aplikasi native.

disabled_platform_ios / disabled_platform_android

Judul Bagian: “disabled_platform_ios / disabled_platform_android”

Pemicu

Sistem saluran telah dinonaktifkan untuk platform tersebut.

Fix

  • Nonaktifkan toggle platform pada saluran.

disable_prod_build / disable_dev_build / disable_device / disable_emulator

Judul Bagian: “disable_prod_build / disable_dev_build / disable_device / disable_emulator”

Pemicu

Sistem saluran melarang jenis build atau target waktu eksekusi saat ini.

Fix

  • Sesuaikan opsi saluran ("allow_prod, allow_dev, allow_device, allow_emulatorJudul Bagian: “key_id_mismatch”

Masalah

Kunci enkripsi bundle dan kunci perangkat berbeda.

Pembetulan

  • Gunakan kunci enkripsi yang sama/kunci publik di seluruh konfigurasi aplikasi dan alur kerja enkripsi bundle.

Masalah

Tidak ada channel yang valid untuk perangkat.

Pembetulan

  • Set default channel di cloud, atau
  • atau defaultChannel dalam versi uji, atau
  • Tetapkan saluran pengganti untuk perangkat.

Rujukan dokumen:

Cause

Backend mengembalikan HTTP 429 dengan on_premise_appKembali HTTP 429 dari backend dengan

  1. ID Aplikasi tidak ada di Capgo — the app_id — pesan yang dikirimkan oleh perangkat tidak terdaftar, sehingga backend tidak memiliki catatan tentangnya.
  2. Aplikasi ditandai sebagai on-premise Aplikasi tersebut ada, tapi konfigurasi untuk pembaruan mandiri, sehingga endpoint cloud Capgo menolak menyediakannya.
  3. Rencana organisasi dibatalkan — organisasi aplikasi tidak lagi memiliki langganan aktif.

Kesalahan umum

Ketikan salah plugins.CapacitorUpdater.appId (di capacitor.config.ts) atau tidak sesuai dengan ID aplikasi yang terdaftar di dashboard Capgo. Backend tidak dapat membedakan 'aplikasi tidak dikenal' dari 'aplikasi on-premise', sehingga mengembalikan kesalahan yang sama code.

Fix

  • Periksa apakah app_id cocok dengan apa yang ditampilkan di dashboard Capgo (sensitif kasus).
  • Jika aplikasi belum terdaftar, jalankan npx @capgo/cli@latest app add.
  • Jika aplikasi sengaja berada di on-premise, atur plugins.CapacitorUpdater.updateUrl ke endpoint update self-hosted Anda daripada URL cloud Capgo.
  • Jika rencana organisasi telah berakhir, ulangi atau tingkatkan rencana.
  1. Pastikan ID aplikasi dan saluran yang benar untuk versi ini.
  2. Konfirmasi CapacitorUpdater.version cocok dengan versi aplikasi native yang terpasang.
  3. Konfirmasi kebijakan saluran (“disable_auto_update) yang sesuai dengan peluncuran yang diinginkan.
  4. Konfirmasi pengaturan platform/target build yang memungkinkan perangkat ini.
  5. Jalankan npx @capgo/cli@latest app debug dan baca kesalahan backend code.

Jika Anda Menggunakan Masalah Pembaruan Umum hubungkan plugin native untuk pekerjaan Penggunaan @capgo/capacitor-updater Untuk kemampuan native di dalam Menggunakan @capgo/capacitor-updater, Direktori Plugin Capgo untuk alur kerja produk di direktori plugin Capgo. Capacitor Plugin oleh Capgo untuk detail implementasi di Capacitor Plugin oleh Capgo Tambahkan atau Perbarui Plugin untuk detail implementasi di Tambahkan atau Perbarui Plugin, dan Alternatif Plugin Enterprise Ionic untuk alur kerja produk di Alternatif Plugin Enterprise Ionic.