Masalah Pembaruan Umum
Copy sebuah prompt pengaturan dengan langkah instalasi dan panduan markdown lengkap untuk plugin ini.
Ketika cek update gagal, Capgo biasanya mengembalikan error code dan message dalam /updates respons. Halaman ini menjelaskan gagal umum dan perbaikan tercepat.
Baca ini terlebih dahulu
Judul bagian “Baca ini terlebih dahulu”no_new_version_availableadalah keadaan normal, bukan gagal.- Banyak laporan “update ditemukan tapi tidak diterapkan” adalah penolakan kebijakan/konfigurasi daripada keterlambatan cache, terutama ketika respons mencakup jawaban eksplisit
errorcode. - Gunakan
npx @capgo/cli@latest app debugsambil mengulangi masalah untuk melihat detail permintaan/respon.
Kode gagal umum
Bagian berjudul “Kode gagal umum”provider_infrastructure_request_blocked
Bagian berjudul “provider_infrastructure_request_blocked”Penyebab
Aplikasi memiliki Mencegah permintaan infrastruktur penyedia dihubungkan dan permintaan asalnya berasal dari IP range datacenter Google atau Apple yang diketahui. Capgo menghalangi permintaan ini di /updates, /stats, dan /channel_self untuk mencegah lalu lintas asal penyedia dari dianggap sebagai lalu lintas perangkat.
Perbaiki
- Reproduksi pembaruan dari perangkat fisik di jaringan pengguna normal.
- Jangan menggunakan probe berbasis awan atau pengguna provider datacenter untuk pembaruan, statistik, atau pengecekan channel-self sementara perlindungan ini diaktifkan.
- Jika itu adalah lalu lintas sengaja, buka tab Informasi dan matikan Blokir permintaan infrastruktur penyedia. Aktifkan lagi ketika tes selesai.
Aplikasi baru memiliki perlindungan ini diaktifkan secara default. Aplikasi yang dibuat sebelum pengaturan diperkenalkan tetap dinonaktifkan sampai Anda mengaktifkannya.
Detil respons
/updatesmenjaga kontrak respons pembaruan dan mengembalikan HTTP200. Tubuhnya termasukerror,message,kind: "blocked"atauprovider("google"dan"apple")./statsatau/channel_selfkembali HTTP429dengan kesalahan yang sama code. Dianggap sebagai kebijakan pemblokiran sengaja, bukan kondisi ulang sementara.
disable_auto_update_to_major
Judul bagian “disable_auto_update_to_major”Penyebab
Saluran Anda memblokir pembaruan besar (disable_auto_update = major) dan versi bundle target lebih besar dari versi dasar perangkat.
Gejala umum
version: 1.0.8 dengan old: 0.0.0 berarti perangkat melaporkan dasar 0.0.0Jadi, perbaikan besar ditolak.
Bagaimana cara memahami hal ini
Backend membandingkan versi besar menggunakan basis perangkat old dan target version.
- Jika target adalah
1.0.1, versi besar basis harus1(contoh1.0.0). - Jika target adalah
10.0.1, versi besar basis harus10(contoh10.0.0).
Pilihan perbaikan A (direkomendasikan): sesuaikan versi besar basis perangkat
Set plugins.CapacitorUpdater.version di capacitor.config.* jadi itu MAJOR cocok dengan bundle MAJOR yang ingin Anda kirimkan (misalnya 1.0.0 untuk 1.0.1, 10.0.0 untuk 10.0.1).
Lalu aplikasikan konfigurasi ini ke aplikasi yang sudah terinstal:
- Jalankan
npx cap sync. - Rebuild dan reinstall aplikasi native.
Pilihan B: lembagakan kebijakan saluran
Izinkan pembaruan otomatis lintas-MAJOR di pengaturan saluran (hanya jika strategi perluasan itu sengaja).
Dokumen terkait:
- Targeting Versi: Nonaktifkan Perbaruan Otomatis di Antara Versi Utama
- Saluran: Nonaktifkan Strategi Perbaruan Otomatis
disable_auto_update_to_minor / disable_auto_update_to_patch
Bagian berjudul “disable_auto_update_to_minor / disable_auto_update_to_patch”Penyebab
Kebijakan saluran lebih ketat (minor atau patch) daripada perbaruan yang ditawarkan.
minormenghalangi ketika bundle target memiliki versi utama atau minor yang berbeda dengan dasar native perangkat (version_build). Contoh:1.2.3 -> 1.3.0dihalangi.patchmenghalangi perubahan nomor versi utama, minor, atau patch dariversion_buildHanya perubahan sufiks yang diizinkan sementaraMAJOR.MINOR.PATCHtetap identik, seperti1.0.0-beta.1 -> 1.0.0-beta.2atau1.0.0+build.1 -> 1.0.0+build.2.
Perbaiki
- Upload sebuah bundle yang kompatibel dengan kebijakan saat ini, atau
- ubah kebijakan saluran di dashboard/CLI.
Dokumen terkait:
disable_auto_update_to_metadata
Judul bagian “disable_auto_update_to_metadata”Penyebab
Saluran menggunakan target berdasarkan metadata (version_number) dan dasar perangkat di bawah yang diperlukan min_update_version.
Perbaiki
- Sinkronkan garis dasar perangkat (
CapacitorUpdater.version) dengan versi aplikasi native yang terpasang, atau - atur ulang
min_update_version/ strategi saluran.
Referensi dokumen terkait:
disable_auto_update_under_native
Bab berjudul “disable_auto_update_under_native”Penyebab
Saluran mencegah penurunan di bawah garis dasar native.
Pembetulan
- Unggah versi bundle yang sama atau lebih besar dari garis dasar native, atau
- nonaktifkan perlindungan penurunan di bawah native untuk saluran tersebut.
Dokumen terkait:
cannot_update_via_private_channel
Bagian berjudul “tidak dapat diupdate melalui saluran privat”Penyebab
Saluran yang dipilih/default tidak memungkinkan pengasasan perangkat sendiri.
Pemecahan masalah
- Gunakan saluran yang berbeda dengan pengasasan perangkat sendiri diaktifkan, atau
- buat saluran publik / diaktifkan pengasasan perangkat sendiri.
Dokumen terkait:
unknown_version_build / semver_error
Bagian berjudul “versi tidak diketahui / kesalahan semver”Penyebab
Versi dasar perangkat hilang (unknown) atau tidak valid semver.
Perbaiki
- Tetapkan
plugins.CapacitorUpdater.versionke valid semver seperti1.2.3. - Sinkronkan dan bangun kembali aplikasi native.
Dokumen terkait:
unsupported_plugin_version
Bagian yang tidak didukung “unsupported_plugin_version”Penyebab
Versi plugin Updater terlalu tua untuk persyaratan backend saat ini.
Pemecahan masalah
- Upgrade
@capgo/capacitor-updater. - Jalankan
npx cap sync. - Rebuild dan reinstall aplikasi native.
disabled_platform_ios / disabled_platform_android
Bagian yang tidak didukung “disabled_platform_ios / disabled_platform_android”Penyebab
Saluran memiliki pembaruan diaktifkan untuk platform tersebut.
Pemecahan masalah
- Aktifkan toggle platform pada saluran.
disable_prod_build / disable_dev_build / disable_device / disable_emulator
Mengaktifkan / Menonaktifkan Pembangunan Prod / Dev / Device / EmulatorPenyebab
Saluran melarang jenis pembangunan saat ini atau target waktu eksekusi.
Solusi
- Pastikan opsi saluran (
allow_prod,allow_dev,allow_device,allow_emulator) sesuai dengan target pengujian Anda.
key_id_mismatch
Mengaktifkan / Menonaktifkan Kunci AplikasiPenyebab
Kunci enkripsi aplikasi dan kunci perangkat berbeda.
Solusi
- Pakai kunci enkripsi/publik yang sama di konfigurasi aplikasi dan alur kerja enkripsi bundle.
no_channel / null_channel_data
Mengaktifkan / Menonaktifkan Saluran / Data Saluran Tidak Ada / Null Channel DataPenyebab
Tidak ada saluran yang valid untuk perangkat.
Perbaiki
- Atur saluran default cloud, atau
- dalam pembangunan uji, atau
defaultChanneltugaskan penggeser saluran untuk perangkat. - Dokumen terkait:
Saluran
on_premise_app
PenyebabBackend mengembalikan HTTP 429 dengan
Related docs: on_premise_app. Hal ini terjadi dalam tiga situasi:
- ID Aplikasi tidak ada di Capgo — pesan yang dikirimkan oleh perangkat tidak terdaftar, sehingga backend tidak memiliki catatan tentangnya.
app_idAplikasi ditandai sebagai on-premise - — aplikasi ada tetapi dikonfigurasi untuk pembaruan self-hosted, sehingga endpoint cloud __CAPGO_KEEP_0__ menolak untuk menyediakannya. — the app exists but is configured for self-hosted updates, so the Capgo cloud endpoint refuses to serve it.
- — aplikasi organisasi tidak lagi memiliki langganan aktif. Kesalahan umum
Tipe salah dalam
(di plugins.CapacitorUpdater.appId ) atau kesalahan dengan ID aplikasi yang terdaftar di __CAPGO_KEEP_0__ dashboard. Backend tidak dapat membedakan “aplikasi tidak dikenal” dari “aplikasi on-premise”, sehingga kembali dengan kesalahan yang sama __CAPGO_KEEP_1__. capacitor.config.ts) or a mismatch with the app ID registered in the Capgo dashboard. The backend cannot distinguish “unknown app” from “on-premise app”, so it returns the same error code.
Perbaiki
- Pastikan
app_idsama persis apa yang ditampilkan di Capgo dashboard (case-sensitive). - Jika aplikasi belum terdaftar, jalankan
npx @capgo/cli@latest app add. - Jika aplikasi sengaja di-host sendiri, atur
plugins.CapacitorUpdater.updateUrlke endpoint update Anda sendiri yang di-host, bukan URL Cloudflare Capgo. - Jika rencana organisasi telah kedaluwarsa, lanjutkan atau tingkatkan rencana.
Daftar Periksa Cepat
Judul bagian “Daftar Periksa Cepat”- Konfirmasi ID aplikasi dan saluran yang benar untuk build.
- Konfirmasi
CapacitorUpdater.versionsama dengan versi aplikasi native yang terpasang. - Konfirmasi kebijakan saluran (
disable_auto_update) sesuai dengan peluncuran yang diharapkan. - Konfirmasi target platform/bangun memungkinkan perangkat ini.
- Jalankan
npx @capgo/cli@latest app debugdan baca kesalahan backend code.
Butuh bantuan lebih lanjut?
Judul bagian “Butuh bantuan lebih lanjut?”Teruskan dari Masalah Pembaruan Umum
Judul bagian “Teruskan dari Masalah Pembaruan Umum”Jika Anda menggunakan Masalah Pembaruan Umum untuk merencanakan pekerjaan plugin asli, hubungkannya dengan Menggunakan @capgo/capacitor-updater untuk kemampuan asli dalam Menggunakan @capgo/capacitor-updater, Capgo Direktori Plugin untuk alur kerja produk dalam Capgo Direktori Plugin, Capacitor Plugin oleh Capgo untuk detail implementasi dalam Capacitor Plugin oleh Capgo, Menambahkan atau Mengupdate Plugin untuk detail implementasi dalam Menambahkan atau Mengupdate Plugin, dan Alternatif Plugin Perusahaan Ionic untuk alur kerja produk dalam Alternatif Plugin Perusahaan Ionic.