Lompat ke konten

Masalah Pembaruan Umum

Ketika cek pembaruan gagal, Capgo biasanya mengembalikan error code dan message dalam /updates respons. Halaman ini menjelaskan gagal umum dan perbaikan tercepat.

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

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 versi dasar 0.0.0, sehingga pembaruan besar ditolak.

Cara menginterpretasinya

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

  • Jika target adalah 1.0.1 baseline major harus 1 (misalnya 1.0.0).
  • Jika target adalah 10.0.1 baseline major harus 10 (misalnya 10.0.0).

Pilihan perbaikan A (direkomendasikan): sesuaikan versi utama basis perangkat

Atur plugins.CapacitorUpdater.version di capacitor.config.* sehingga 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 telah diinstal sekali:

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

Pilihan B: lembagai kebijakan saluran

Izinkan pembaruan otomatis lintas-versi besar di pengaturan saluran (hanya jika strategi perluasan itu sengaja).

Dokumen terkait:

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 pembaruan yang ditawarkan.

Pemecahan masalah

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

Dokumen terkait:

Penyebab

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

Pembaruan

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

Referensi terkait:

Penyebab

Saluran mencegah penurunan di bawah garis dasar native.

Perbaiki

  • Upload versi bundle yang lebih besar atau sama dengan dasar native, atau
  • nonaktifkan perlindungan penurunan versi bawaan untuk saluran tersebut.

Referensi dokumen terkait:

Penyebab

Saluran yang dipilih/tidak dipilih tidak memungkinkan penggunaan perangkat untuk menetapkan saluran.

Perbaiki

  • Gunakan saluran yang berbeda dengan pengaturan penugasan perangkat diaktifkan, atau
  • ubah saluran menjadi publik / diaktifkan pengaturan penugasan perangkat.

Referensi dokumen terkait:

Penyebab

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

Perbaikan

  • Atur plugins.CapacitorUpdater.version ke versi semver yang valid seperti 1.2.3.
  • Sinkron dan bangun kembali aplikasi native.

Dokumen terkait:

Penyebab

Versi plugin Updater terlalu tua untuk persyaratan backend saat ini.

Pemecahan

  • Upgrade @capgo/capacitor-updater.
  • Jalankan npx cap sync.
  • Rebuild dan reinstall aplikasi native.

Penyebab

Saluran memiliki pembaruan diaktifkan untuk platform tersebut.

Pemecahan

  • Aktifkan toggle platform pada saluran.

disable_prod_build / disable_dev_build / disable_device / disable_emulator

Bagian berjudul “disable_prod_build / disable_dev_build / disable_device / disable_emulator”

Penyebab

Saluran melarang jenis konfigurasi atau target runtime saat ini.

Pemecahan Masalah

  • Sesuaikan opsi saluran (allow_prod, allow_dev, allow_device, allow_emulator) dengan target uji Anda.

Penyebab

Kunci enkripsi aplikasi dan kunci perangkat berbeda.

Pemecahan Masalah

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

Penyebab

Tidak ada saluran yang valid untuk perangkat.

Perbaiki

  • Atur saluran cloud default, atau
  • dalam pembangunan uji, atau defaultChannel tugaskan penggeser saluran untuk perangkat.
  • Dokumen terkait:

Saluran

on_premise_app

Penyebab

Backend mengembalikan HTTP 429 dengan

Related docs: __CAPGO_KEEP_0__ on_premise_app. Ini terjadi dalam tiga situasi:

  1. ID Aplikasi tidak ada di Capgo — pesan yang dikirimkan oleh perangkat tidak terdaftar, sehingga backend tidak memiliki catatan tentangnya. app_id Aplikasi ditandai sebagai on-premise
  2. — 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.
  3. — aplikasi organisasi tidak lagi memiliki langganan aktif. Kesalahan umum

Salah ketik di

(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 sesuai dengan yang ditampilkan di dashboard __CAPGO_KEEP_0__ (sensitif kasus). app_id matches exactly what is shown in the Capgo dashboard (case-sensitive).
  • Jika aplikasi sengaja di-host sendiri, atur npx @capgo/cli@latest app add.
  • ke URL update Anda sendiri yang di-host, bukan URL Cloud __CAPGO_KEEP_0__. plugins.CapacitorUpdater.updateUrl to your self-hosted update endpoint instead of the Capgo cloud URL.
  • Daftar checklist diagnostik cepat

Judul bagian “Daftar checklist diagnostik cepat”

Konfirmasi ID aplikasi dan saluran benar untuk build.
  1. Konfirmasi
  2. sesuai dengan versi aplikasi native yang terpasang. CapacitorUpdater.version matches installed native app version.
  3. Konfirmasi kebijakan saluran (disable_auto_update) sesuai dengan rencana peluncuran.
  4. Konfirmasi target platform/bangun toggles memungkinkan perangkat ini.
  5. Jalankan npx @capgo/cli@latest app debug dan baca kesalahan backend code.