V3 から V4 へ
Mengapa upgrade ini
Setelah banyak diskusi di komunitas discord dengan Anda, saya menemukan mode manual sangat terlalu manual dan tidak aman untuk digunakan, misalnya, auto-revert tidak dimungkinkan, jadi jika Anda gagal memperbarui secara manual, pengguna harus menghapus aplikasi dan menginstal kembali, yang merupakan UX yang buruk
Sementara itu, saya mengambil kesempatan ini untuk memberi Anda lebih banyak kebebasan, dan menghapus semua kode buruk yang saya buat
Instalasi
npm i @capgo/capacitor-updater@4
Auto-update cloud
Jika Anda menggunakan contoh dasar di aplikasi Anda, Anda aman untuk bermigrasi ke versi baru, selamat menikmati!
Auto-update self-hosted
Untuk Anda, tetap sederhana, perubahannya adalah:
- Nama pengaturan dari
autoUpdateUrlmenjadiupdateUrl - Metode Endpoint berubah dari
GETke POST
Pengguna manual
Untuk Anda, ini adalah perubahan yang paling signifikan, tetapi untuk yang terbaik! Anda mendapatkan banyak peningkatan, Baca dengan seksama
Perubahan
autoUpdateUrlmenjadiupdateUrlkarena pengaturan ini sekarang dapat digunakan dalam mode manual juga- Penghapusan
cancelDelaydandelayUpdatedigantikan olehsetDelay - Tidak ada lagi
versionNamedalam set - Perubahan kunci
version, yang dikembalikan di sebagian besar fungsi ke objekBundleInfo
interface BundleInfo { id: string; version: string; downloaded: string; status: 'success' | 'error' | 'pending' | 'downloading'}- Penamaan ulang nama yang menyesatkan sekarang (bahkan untuk menjelaskan tidak bisa jelas, tetapi pada penggunaan mudah memahami yang baru):
- yang disebut
versionsekarang mengacu padabundle idmengacu padaversionlama yang merupakan string acak 10 karakter,idini adalah satu-satunya cara yang dapat dipercaya dan unik untuk mengakses bundle Anda, contoh7Dfcd2RedNversionsekarang mengacu padaversionNameyang Anda pilih untuk bundle, contoh100
- yang disebut
updateUrlberpindah darigetkepost, karena header kustom menjadi masalah bagi beberapa dari Anda dan post lebih logis, semua header sebelumnya masuk ke body dan prefixcap_menghilang- Metode
versionNamedihapus, digantikan olehgetId - list sekarang mengembalikan daftar
BundleInfo - Mengganti nama
getIdmenjadigetDeviceId autoUpdatemenjadi true secara default, jika Anda menggunakan mode Manual, atur ke false
Berita
- Metode
getLatest, metode ini memungkinkan Anda mendapatkan dari server Anda yang diatur denganupdateUrlversi terakhir yang tersedia - Metode
setDelayyang mengambil{kind: "background" | "kill" | "nativeVersion" | "date", value?: string}sebagai argumen untuk mengatur delay ke mode berbeda - Metode
next, untuk mengatur versi di background berikutnya, berlawanan dengansetyang melakukannya secara instan - Metode
isAutoUpdateEnabled, untuk memberi tahu Anda jika Anda berada dalam konteks auto-update - Event
downloadCompleteketika download mencapai 100% - Menambahkan field wajib
versiondalam metode download notifyAppReadymenjadi wajib dalam mode manual juga, jika tidak dipanggil setelah 10 detik aplikasi kembali ke versi sebelumnya
Kontributor
@lincolnthree Terima kasih banyak telah memulai pekerjaan ini, tidak mungkin membuat pembaruan ini berhasil tanpa Anda