Langsung ke konten

Dari V3 ke V4

Setelah banyak diskusi di komunitas Discord dengan kalian, saya menyadari bahwa mode manual terlalu rumit dan tidak aman untuk digunakan. Misalnya, auto-revert tidak mungkin dilakukan, sehingga jika update gagal dalam mode manual, pengguna harus menghapus dan menginstal ulang aplikasi—sebuah UX yang sangat buruk.

Sementara itu, saya memanfaatkan kesempatan ini untuk memberikan lebih banyak kebebasan kepada kalian dan menghapus semua code buruk yang saya buat.

npm i @capgo/capacitor-updater@4

Jika Anda menggunakan contoh dasar di aplikasi Anda, Anda aman untuk bermigrasi ke versi baru. Selamat menikmati!

Pembaruan otomatis self-hosted

Bagian berjudul “Auto-update self-hosted”

Bagi Anda, tetap sederhana, perubahannya adalah:

  • Nama pengaturan dari autoUpdateUrl di updateUrl
  • Metode Endpoint berubah dari GET ke POST

Bagi Anda, ini perubahan paling signifikan, tapi justru yang terbaik! Anda dapat banyak peningkatan. Baca dengan cermat.

  • autoUpdateUrl menjadi updateUrl karena pengaturan ini sekarang juga bisa digunakan dalam mode manual
  • Penghapusan cancelDelay dan delayUpdate menggantikan setDelay
  • Tidak ada lagi versionName di dalam set
  • Perubahan version key, yang di sebagian besar fungsi dikembalikan ke object BundleInfo
interface BundleInfo {
id: string;
version: string;
downloaded: string;
status: 'success' | 'error' | 'pending' | 'downloading'
}
  • Nama-nama yang membingungkan telah diubah (meskipun penjelasannya mungkin tidak sepenuhnya jelas, namun nama baru ini jauh lebih mudah dipahami saat digunakan):
    • yang sebelumnya disebut version sekarang merujuk pada bundle
    • id merujuk pada yang lama version yang merupakan string acak 10 karakter, ini id adalah satu-satunya cara terpercaya dan unik untuk mengakses bundle Anda, contoh 7Dfcd2RedN.
    • version sekarang merujuk ke versionName yang Anda pilih untuk bundle, contohnya 1.0.0
  • updateUrl beralih dari get ke post, karena custom headers menjadi kendala bagi sebagian dari Anda dan penggunaan post lebih logis, semua header sebelumnya dipindahkan ke body dan prefix cap_ hilang.
  • versionName method dihapus, digantikan dengan getId
  • list sekarang mengembalikan daftar BundleInfo
  • Ganti nama getId di getDeviceId
  • autoUpdate menjadi true secara default, jika Anda menggunakan mode Manual, set ke false.
  • Metode getLatest, metode ini memungkinkan Anda mengambil dari set server Anda dengan updateUrl versi terakhir yang tersedia.
  • Metode setDelay yang mengambil {jenis: “background” | “kill” | “nativeVersion” | “date”, value? : string} sebagai argumen untuk mengatur delay pada mode yang berbeda.
  • Metode next, untuk mengatur versi pada backgrounding berikutnya, berbeda dengan set yang melakukannya secara instan.
  • Metode isAutoUpdateEnabled, untuk memberi tahu Anda apakah sedang dalam konteks auto-update
  • Event downloadComplete saat download mencapai 100%
  • Menambahkan field wajib version pada method download
  • notifyAppReady juga menjadi wajib di mode manual, jika tidak dipanggil setelah 10 detik, app akan kembali ke versi sebelumnya.

@lincolnthree Terima kasih banyak telah memulai pekerjaan ini, pembaruan ini tidak mungkin berhasil tanpa bantuan Anda.

Jika Anda menggunakan Dari V3 ke V4 untuk merencanakan pengiriman live update, hubungkan dengan Live Updates Capgo untuk alur kerja produk di Capgo Live Updates, Ikhtisar untuk detail implementasi di Overview, Fitur untuk detail implementasi di Features, Perilaku Update untuk detail implementasi di Update Behavior, dan Tipe Update untuk detail implementasi di Update Types.