Langsung ke konten

@capgo/capacitor-updater

Live update untuk aplikasi capacitor.

Capgo live updates tidak terbatas pada Capacitor. Gunakan backend dan CLI yang sama dengan plugin klien pendamping:

@capgo/capacitor-updater merilis Update bundle JavaScript ke aplikasi produksi Capacitor tanpa menunggu review store. Download bundle yang ditandatangani di background, atur rollout dengan channel dan aturan delay, serta rollback jika notifyAppReady() tidak dipanggil dalam waktu yang dikonfigurasi appReadyTimeout.

Penggunaan umum: hotfix bug produksi, beta bertahap per channel, eksperimen UI A/B, dan rollback darurat ke bundle bawaan.

PlatformDukungan
iOSYa
AndroidYa
WebBundle berlaku pada layer WebView di shell native, bukan pada situs statis yang di-host

Client Cordova dan Electron memakai plugin sejenis yang ditautkan di atas dengan backend Capgo yang sama.

  • notifyAppReady - Beri tahu native layer bahwa JavaScript berhasil diinisialisasi.
  • setUpdateUrl - Atur URL update aplikasi secara dinamis saat runtime.
  • setStatsUrl - Atur URL statistik aplikasi secara dinamis saat runtime.
  • setChannelUrl - Atur URL channel aplikasi secara dinamis saat runtime.
MetodeDeskripsi
notifyAppReadyBeri tahu native layer bahwa JavaScript berhasil diinisialisasi.
setUpdateUrlAtur URL update aplikasi secara dinamis saat runtime.
setStatsUrlAtur URL statistik aplikasi secara dinamis saat runtime.
setChannelUrlAtur URL channel aplikasi secara dinamis saat runtime.
downloadDownload bundle baru dari URL yang diberikan untuk diinstal nanti.
nextAtur bundle berikutnya agar diaktifkan saat app masuk background atau restart.
setAtur bundle saat ini dan langsung reload app.
deleteHapus bundle dari penyimpanan lokal untuk membebaskan ruang disk.
setBundleErrorTandai bundle sebagai gagal/error secara manual dalam mode update manual.
listAmbil semua bundle yang di-download secara lokal dan tersimpan di app.
resetReset app ke bundle yang diketahui berfungsi baik.
currentDapatkan info tentang bundle yang sedang aktif.
reloadReload app secara manual untuk menerapkan update yang tertunda.
setMultiDelayKonfigurasi kondisi yang harus terpenuhi sebelum update yang tertunda diterapkan.
cancelDelayBatalkan semua kondisi delay dan segera terapkan update yang tertunda.
getLatestCek server update untuk versi bundle terbaru yang tersedia.
setChannelAtur channel update runtime lokal untuk perangkat ini. Ini tidak membuat device override di dashboard/API.
unsetChannelHapus penetapan channel perangkat ini dan kembali ke channel default.
getChannelDapatkan channel yang saat ini ditetapkan untuk perangkat ini.
listChannelsDapatkan daftar semua channel yang tersedia untuk di-assign sendiri oleh perangkat ini.
setCustomIdAtur custom identifier untuk perangkat ini.
getBuiltinVersionDapatkan versi bundle bawaan (versi asli yang disertakan dengan aplikasi native Anda).
getDeviceIdDapatkan identifier unik yang ramah privasi untuk perangkat ini.
getPluginVersionDapatkan versi plugin Capacitor Updater yang terinstal di aplikasi Anda.
isAutoUpdateEnabledPeriksa apakah update otomatis saat ini aktif.
removeAllListenersHapus semua event listener yang terdaftar untuk plugin ini.
addListenerPantau event download bundle di aplikasi. Terpicu saat download dimulai, selama proses download, dan saat selesai. Ini akan mengembalikan persentase download selama proses berlangsung.
addListenerPantau event 'no need to update', berguna jika Anda ingin melakukan force check setiap kali aplikasi diluncurkan.
addListenerPantau event update yang tersedia, berguna jika Anda ingin memaksa pengecekan setiap kali aplikasi dijalankan.
addListenerDengarkan event downloadComplete.
addListenerPantau event update yang breaking saat backend menandai update tidak kompatibel dengan aplikasi saat ini. Mengirimkan payload yang sama dengan versi legacy majorAvailable listener lama.
addListenerPantau event update Major di dalam App, untuk memberi tahu Anda saat update major terblokir karena pengaturan disableAutoUpdateBreaking.
addListenerPantau event kegagalan update di dalam App, untuk memberi tahu Anda saat update gagal diinstal pada saat aplikasi dijalankan berikutnya.
addListenerDengarkan event set di aplikasi, memberi tahu saat bundle berhasil diterapkan. Event ini disimpan secara native hingga JavaScript mengonsumsinya, jadi jika aplikasi di-reload sebelum listener terpasang, event terakhir yang tertunda set akan dikirim setelah listener subscribe.
addListenerPantau event set next di dalam App untuk mengetahui kapan sebuah bundle masuk antrean sebagai bundle berikutnya yang akan diinstal.
addListenerPantau event kegagalan download di dalam App, untuk memberi tahu Anda saat download bundle gagal.
addListenerPantau event reload di dalam App untuk mengetahui kapan reload telah terjadi.
addListenerDengarkan event app ready di aplikasi, memberi tahu saat aplikasi siap digunakan. Event ini disimpan secara native hingga JavaScript mengonsumsinya, sehingga tetap bisa dikirim setelah reload meskipun listener baru terpasang saat startup aplikasi.
addListenerDengarkan event private channel, yang dipicu saat mencoba mengatur channel yang tidak mengizinkan self-assignment perangkat.
addListenerDengarkan perubahan status flexible update di Android.
isAutoUpdateAvailablePeriksa apakah fitur auto-update tersedia (tidak dinonaktifkan oleh konfigurasi server kustom).
getNextBundleDapatkan informasi tentang bundle yang antre untuk diaktifkan pada reload berikutnya.
getFailedUpdateAmbil informasi tentang bundle terbaru yang gagal dimuat.
setShakeMenuAktifkan atau nonaktifkan menu gestur shake untuk debugging dan pengujian.
isShakeMenuEnabledPeriksa apakah menu debug gestur shake saat ini aktif.
setShakeChannelSelectorAktifkan atau nonaktifkan pemilih channel gestur shake saat runtime.
isShakeChannelSelectorEnabledPeriksa apakah pemilih channel gestur shake saat ini aktif.
getAppIdDapatkan App ID yang saat ini dikonfigurasi untuk komunikasi dengan server update.
setAppIdUbah App ID yang dipakai untuk komunikasi dengan server update secara dinamis.
getAppUpdateInfoDapatkan info ketersediaan aplikasi di App Store atau Play Store.
openAppStoreBuka halaman aplikasi di App Store atau Play Store.
performImmediateUpdateLakukan update in-app langsung di Android.
startFlexibleUpdateMulai update in-app secara fleksibel di Android.
completeFlexibleUpdateSelesaikan update in-app secara fleksibel di Android.

Referensi ini disinkronkan dari src/definitions.ts di capacitor-updater.

Jika Anda menggunakan @capgo/capacitor-updater untuk merencanakan pekerjaan plugin native, hubungkan dengan Menggunakan @capgo/capacitor-updater untuk fitur native di bagian Menggunakan @capgo/capacitor-updater, Direktori Plugin Capgo untuk alur kerja produk di Direktori Plugin Capgo, Plugin Capacitor oleh Capgo untuk detail implementasi pada Capacitor Plugins oleh Capgo Menambahkan atau Memperbarui Plugin untuk detail implementasi di Menambahkan atau Memperbarui Plugin, dan Alternatif Plugin Ionic Enterprise untuk alur kerja produk dalam Alternatif Plugin Ionic Enterprise.