Lompat ke konten

Jenis Update

Capgo mendukung beberapa jenis pembaruan melalui udara (OTA). Halaman ini menampilkan dan menjelaskan semua jenis pembaruan tersebut sehingga Anda dapat memilih kombinasi yang tepat untuk aplikasi Anda.

Kontrol ketika update diterapkan setelah diunduh.

JenisDeskripsiPenggunaan
autoUpdate: atBackgroundUnduh di latar belakang, terapkan ketika pengguna mengalihkan atau membunuh aplikasiAplikasi kebanyakan; gangguan minimal
autoUpdate: atInstallTerapkan segera hanya pada instalasi baru atau update toko aplikasiPengguna baru mendapatkan versi terbaru; pengguna lama menggunakan alur default
__CAPGO_KEEP_0__: onLaunchTeraplikasikan segera saat instalasi, penyimpanan update, atau setelah aplikasi dimatikanKeseimbangan antara kebaruan dan stabilitas sesi
__CAPGO_KEEP_0__: alwaysTeraplikasikan segera setiap kali update diunduh (termasuk saat diresume)Perbaikan kritis, aplikasi dengan state sederhana
__CAPGO_KEEP_0__: onlyDownloadUnduh secara otomatis dan emit updateAvailable, tetapi tidak pernah teraplikasikan atau atur bundle berikutnya secara otomatisAplikasi yang menampilkan prompt update sendiri atau mengontrol secara tepat kapan untuk memanggil set()

Konfigurasi di capacitor.config.ts:

plugins: {
CapacitorUpdater: {
autoUpdate: 'atBackground', // default; true is still accepted
// or: 'off' | 'atInstall' | 'onLaunch' | 'always' | 'onlyDownload'
}
}

Syarat yang harus dipenuhi sebelum sebuah perbarui diinstal. Gunakan setMultiDelay untuk menggabungkannya (semua syarat harus dipenuhi).

SyaratDeskripsiContoh
tanggalTunggu sampai setelah tanggal/ketika tertentuKoordinasikan dengan rilis server-side
latar belakangTunggu durasi minimum (ms) setelah aplikasi dibackgroundMencegah aplikasi penggantian cepat
versi nativeMinta versi native binary minimumMencegah pembaruan pada native code yang tidak kompatibel
killTunggu sampai event kill aplikasi berikutnyaHanya berlaku 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' },
],
});

Pengaturan Versi Blokir (Kebijakan Saluran)

Judul Bagian “Pengaturan Versi Blokir (Kebijakan Saluran)”

Mengontrol update semver apa saluran akan mendapatkan pengiriman otomatis. Ditetapkan melalui --disable-auto-update pada saluran.

StrategiBloksMengizinkanKasus Pengguna
tidak adaTidak adaVersi bundle apa punDefault; pembaruan otomatis penuh
majuLebih besar dari versi maju version_buildVersi maju lebih besar dari 1.2.3 -> 2.0.0, misalnya 1.2.3 -> 1.9.0 atau 1.2.3 -> 1.2.4Mencegah perubahan yang mengganggu dari mencapai native code yang lama
kecilBerbeda mayor atau kecil dari version_buildcontoh 1.2.3 -> 1.3.0Sama mayor dan kecil, contoh 1.2.3 -> 1.2.4Tetapkan pembaruan di satu garis minor native
perbaikanPerubahan apapun mayor, kecil, atau perbaikan nomor, contoh 1.0.0 -> 1.0.1Hanya perubahan sufiks sementara MAJOR.MINOR.PATCH tetap identik, contoh 1.0.0-beta.1 -> 1.0.0-beta.2 atau 1.0.0+build.1 -> 1.0.0+build.2Mode paling ketat: tidak ada pergerakan versi inti
metadataTidak ada min_update_version, atau version_build di bawahnyaBundle target yang min_update_version lebih kecil dari atau sama dengan version_buildAturan kompatibilitas kustom per bundle

Pemeriksaan ini membandingkan bundle target terhadap dasar native yang dikirim sebagai version_build, bukan bundle yang diunduh saat ini yang dikirim sebagai version_name.

Jendela terminal
npx @capgo/cli channel set production --disable-auto-update major

Bagaimana bundle dikirimkan ke perangkat.

TipeDeskripsiKapan Menggunakan
Full bundleSeluruh bundle JS diunduhPertama kali install, perubahan besar, atau ketika delta tidak tersedia
Delta (manifest)Hanya file yang berubah diunduhPembaruan paling banyak; lebih cepat dan ramah bandwidth
Jendela terminal
# Full bundle (default)
npx @capgo/cli bundle upload --channel production
# Delta updates
npx @capgo/cli bundle upload --channel production --delta
KategoriJenis
Waktu aplikasioff, atBackground, atInstall, onLaunch, always, onlyDownload
Kondisi penundaandate, background, nativeVersion, kill
Penghalang versinone, major, minor, patch, metadata
PengirimanBundle lengkap, Delta (manifest)

Jika Anda menggunakan Tipe Update untuk merencanakan pengiriman update hidup secara langsung, hubungkan dengan Capgo Live Updates untuk alur kerja produk di Capgo Live Updates, Ringkasan untuk detail implementasi di Ringkasan, Fitur untuk detail implementasi di Fitur-Fitur Pengaturan Perbarui untuk detail implementasi di Pengaturan Perbarui, dan Mulai untuk detail implementasi di Mulai.