Jenis Pembaruan
Capgo mendukung beberapa jenis pembaruan over-the-air (OTA). Halaman ini mencantumkan dan menjelaskan semuanya sehingga Anda dapat memilih kombinasi yang tepat untuk aplikasi Anda.
Waktu Penerapan
Section titled “Waktu Penerapan”Mengontrol kapan pembaruan diterapkan setelah diunduh.
| Jenis | Deskripsi | Kasus Penggunaan |
|---|---|---|
| Default | Unduh di latar belakang, terapkan saat pengguna memindahkan aplikasi ke latar belakang atau menutup aplikasi | Sebagian besar aplikasi; gangguan minimal |
directUpdate: atInstall | Terapkan segera hanya pada instalasi baru atau pembaruan app store | Pengguna baru mendapatkan versi terbaru; pengguna yang ada menggunakan alur default |
directUpdate: onLaunch | Terapkan segera pada instalasi, pembaruan store, atau setelah aplikasi ditutup | Keseimbangan antara kesegaran dan stabilitas sesi |
directUpdate: always | Terapkan segera kapan pun pembaruan diunduh (termasuk saat resume) | Perbaikan kritis, aplikasi dengan state sederhana |
Konfigurasi di capacitor.config.ts:
plugins: { CapacitorUpdater: { directUpdate: false, // default // or: 'atInstall' | 'onLaunch' | 'always' }}Kondisi Penundaan
Section titled “Kondisi Penundaan”Kondisi yang harus dipenuhi sebelum pembaruan diinstal. Gunakan setMultiDelay untuk menggabungkannya (semua kondisi harus terpenuhi).
| Kondisi | Deskripsi | Contoh |
|---|---|---|
| date | Tunggu hingga setelah tanggal/waktu tertentu | Koordinasi dengan rilis sisi server |
| background | Tunggu durasi minimum (ms) setelah aplikasi dipindahkan ke latar belakang | Hindari penerapan selama perpindahan aplikasi cepat |
| nativeVersion | Memerlukan versi biner native minimum | Blokir pembaruan pada kode native yang tidak kompatibel |
| kill | Tunggu hingga event penutupan aplikasi berikutnya | Terapkan hanya pada restart penuh |
import { CapacitorUpdater } from '@capgo/capacitor-updater';
await CapacitorUpdater.setMultiDelay({ delayConditions: [ { kind: 'date', value: '2023-06-01T00:00:00.000Z' }, { kind: 'background', value: '60000' }, ],});Pemblokiran Versi (Kebijakan Channel)
Section titled “Pemblokiran Versi (Kebijakan Channel)”Mengontrol pembaruan semver mana yang akan dikirimkan secara otomatis oleh channel. Atur melalui --disable-auto-update pada channel.
| Strategi | Memblokir | Mengizinkan | Kasus Penggunaan |
|---|---|---|---|
| none | Tidak ada | Semua pembaruan | Default; pembaruan otomatis penuh |
| major | 0.0.0 → 1.0.0 | Major yang sama (mis. 1.x → 1.y) | Mencegah perubahan breaking mencapai native lama |
| minor | 0.0.0 → 1.1.0, 1.1.0 → 1.2.0 | Minor yang sama (mis. 1.2.x → 1.2.y) | Kontrol lebih ketat dalam major |
| patch | Perubahan apa pun kecuali kenaikan patch | Hanya 0.0.311 → 0.0.314 | Sangat ketat; pembaruan patch saja |
| metadata | Pembaruan tanpa min_update_version | Pembaruan dengan metadata kompatibilitas eksplisit | Aturan kompatibilitas kustom per bundle |
npx @capgo/cli channel set production --disable-auto-update majorJenis Pengiriman
Section titled “Jenis Pengiriman”Bagaimana bundle ditransfer ke perangkat.
| Jenis | Deskripsi | Kapan Digunakan |
|---|---|---|
| Full bundle | Seluruh bundle JS diunduh | Instalasi pertama, perubahan besar, atau saat delta tidak tersedia |
| Delta (manifest) | Hanya file yang berubah yang diunduh | Sebagian besar pembaruan; lebih cepat dan hemat bandwidth |
# Full bundle (default)npx @capgo/cli bundle upload --channel production
# Delta updatesnpx @capgo/cli bundle upload --channel production --deltaReferensi Cepat
Section titled “Referensi Cepat”| Kategori | Jenis |
|---|---|
| Waktu penerapan | Default, atInstall, onLaunch, always |
| Kondisi penundaan | date, background, nativeVersion, kill |
| Pemblokiran versi | none, major, minor, patch, metadata |
| Pengiriman | Full bundle, Delta (manifest) |
Terkait
Section titled “Terkait”- Perilaku Pembaruan — Konfigurasi waktu penerapan dan penundaan
- Penargetan Versi — Routing versi berbasis channel
- Pembaruan Delta (manifest) — Aktifkan unduhan parsial
- Channel — Konfigurasi dan prioritas channel