Lompat ke konten utama
Update Langsung

Tampilkan versi terbaru saat pengguna membuka aplikasi Anda

Secara default, live update berjalan satu sesi setelah diunduh. Mode direct update justru menerapkannya saat peluncuran, di balik splash screen Anda, sehingga layar pertama yang dilihat pengguna sudah menampilkan versi terbaru.

autoUpdate: saat atInstall, onLaunch, atau selalu
Splash screen ditahan sampai update siap
Delta download membuat waktu tunggu singkat

Masalahnya

Update background terlambat satu sesi

Apa yang terjadi pada mode default

1

User membuka aplikasi

App berjalan dengan bundle yang sudah ada. Updater mengecek bundle baru dan mendownload-nya di background.

2

Sesi menjalankan versi saat ini

Selama sisa sesi tersebut, pengguna akan menjalankan code yang sudah terinstal sebelum perbaikan Anda.

3

Update diterapkan saat resume berikutnya

Saat pengguna keluar dari aplikasi, updater akan menginstal bundle baru. Bundle tersebut akan muncul saat mereka membuka aplikasi kembali.

Untuk kebanyakan rilis, ini adalah trade-off yang tepat. Namun jika sesi setelah upload Anda harus menjalankan code baru, gunakan mode direct update.

Saat sesi pertama sangat krusial

Alur pembayaran atau login yang rusak

Pengguna yang membuka aplikasi tidak perlu melihat layar error lagi sebelum perbaikan diterapkan.

Perbaikan keamanan layer web

Anda ingin JavaScript yang sudah di-patch langsung berjalan saat startup, bukan di sesi berikutnya.

Perubahan bertanggal

Syarat, pemberitahuan, atau konten event yang harus sudah terbaru di layar pertama yang dilihat pengguna.

Solusinya

Apa yang berubah dengan mode direct update

Updater akan mengecek saat startup sementara splash screen tetap tampil. Jika bundle baru tersedia, ia akan mendownload dan menerapkannya sebelum splash screen hilang.

Mode default (atBackground)

1
User membuka aplikasi
2
Aplikasi menampilkan versi saat ini
3
Update diunduh di background
4
Update diterapkan saat resume berikutnya

Tanpa menunggu saat peluncuran. User melihat update pada sesi berikutnya.

Mode direct (onLaunch)

1
User membuka app dan splash screen tetap muncul
2
Updater mengecek dan mendownload file yang berubah
3
Update diterapkan, splash hilang, versi baru muncul

User melihat versi baru di layar pertama. Mereka menunggu di splash screen saat proses download.

Dokumentasi perilaku update

Cara kerjanya

Cara setup direct updates

Direct mode adalah konfigurasi native, jadi harus disertakan dalam store build terlebih dahulu. Setelah itu, setiap live update akan mengikutinya. Perintah diambil dari dokumentasi Capgo.

  1. Tambah plugin splash screen dan pilih mode

    Install @capacitor/splash-screen, lalu atur autoUpdate, autoSplashscreen, dan launchAutoHide di capacitor.config.ts.

    npm install @capacitor/splash-screen
    npx cap sync
    
    // capacitor.config.ts
    plugins: {
      CapacitorUpdater: {
        autoUpdate: 'onLaunch', // or 'atInstall' / 'always'
        autoSplashscreen: true,
        keepUrlPathAfterReload: true,
      },
      SplashScreen: { launchAutoHide: false },
    }
    Penanganan splash screen
  2. Kirim konfigurasi dalam build store

    capacitor.config dikompilasi ke dalam native app, sehingga mode baru sampai ke user pada rilis store berikutnya. Capgo Build dapat membuatnya di cloud.

    npx @capgo/cli@latest build request --platform ios
    npx @capgo/cli@latest build request --platform android
    Dokumentasi Build Capgo
  3. Upload bundle sebagai delta

    User menunggu download saat startup, jadi kirimkan hanya file yang berubah. CLI mendeteksi mode instant apply dan memberikan prompt untuk delta upload.

    npx @capgo/cli@latest bundle upload --channel production --delta
    Dokumentasi delta updates
  4. Aktifkan automatic rollback

    Panggil notifyAppReady() setelah app Anda berjalan. Jika bundle baru gagal dijalankan, perangkat akan kembali ke bundle terakhir yang berfungsi.

    import { CapacitorUpdater } from '@capgo/capacitor-updater'
    
    await CapacitorUpdater.notifyAppReady()
    Dokumentasi notifyAppReady()

Pilih mode yang sesuai dengan app Anda

Direct updates adalah sebuah pertukaran: waktu tunggu singkat saat peluncuran demi menghadirkan versi terbaru di layar pertama.

Tiga mode apply instan

Atur autoUpdate di capacitor.config.ts. Setiap mode menentukan kapan update dapat diterapkan saat user menunggu.

  • atInstall: hanya tepat setelah instalasi baru atau update native app dari store
  • onLaunch: saat app dijalankan dari kondisi mati (cold start)
  • selalu: pada setiap pengecekan foreground, bahkan saat aplikasi sedang terbuka
Pengaturan updater

3

Mode penerapan instan di autoUpdate

Penanganan splash screen

Mode direct memerlukan @capacitor/splash-screen dengan launchAutoHide di-set ke false, dan autoSplashscreen di-set ke true. Updater menyembunyikan splash screen setelah update diterapkan, atau setelah tahu tidak ada update yang diperlukan.

  • Tidak perlu memanggil SplashScreen.hide() secara manual
  • keepUrlPathAfterReload menjaga user tetap di route yang sama setelah reload
  • Dengarkan appReady jika butuh proses tambahan setelah splash disembunyikan
Penanganan splash screen

autoSplashscreen

Wajib untuk setiap mode direct

Trade-off yang perlu diantisipasi

User menunggu download saat startup, dan dengan fitur update otomatis, mereka bisa reload app saat sedang digunakan. Siapkan keduanya.

  • Upload dengan --delta agar hanya file yang berubah yang didownload
  • Simpan dan restore app state agar reload tidak menghilangkan progress user
  • Gunakan mode default jika delay satu sesi tidak menjadi masalah
Dokumentasi Delta updates

--delta

Direkomendasikan untuk setiap upload direct update

Kapan harus menggunakan direct updates

Gunakan mode direct saat sesi saat ini harus menjalankan code yang baru. Gunakan default untuk kebutuhan lainnya.

Perbaikan bug kritis

Bug pembayaran, login, atau data di mana menjalankan code lama untuk satu sesi lagi tidak memungkinkan.

Onboarding saat pertama kali jalan

atInstall menerapkan bundle terbaru tepat setelah instalasi baru atau update store, sehingga user baru langsung mendapatkan onboarding terbaru Anda.

Konten yang kedaluwarsa

Halaman event, pengumuman, atau ketentuan yang harus selalu mutakhir saat user membuka aplikasi.

Patch keamanan

Perbaikan keamanan layer web yang harus langsung berjalan saat launch. Perbaikan pada code native tetap memerlukan rilis store.

Routine releases

Tweaks styling dan fitur kecil jarang perlu menunggu saat launch. Mode default akan menerapkannya satu sesi kemudian.

Aplikasi yang terbuka berjam-jam

Dengan always, pengecekan berkala (default tiap 10 menit) dapat menerapkan update saat aplikasi terbuka. Simpan state sebelum mengandalkannya.

Memperpendek waktu tunggu saat launch

Waktu tunggu saat launch adalah pengecekan update ditambah download. Delta updates menjaga download hanya pada file yang berubah.

~50ms

Latensi tipikal API

Delta

Hanya file yang berubah yang diunduh

1B+

Update terkirim per bulan

Aplikasi yang dibangun dengan Capacitor

Aplikasi informasi publik butuh perbaikan konten cepat

Aplikasi darurat, kesehatan, dan layanan publik tidak bisa menunggu berhari-hari hanya untuk memperbaiki checklist yang rusak, link sumber, atau pengumuman lokasi tertentu. Direct updates memungkinkan layer web diperbarui segera setelah perbaikan disetujui.

Ikon aplikasi FEMA CUACA

FEMA

Panduan darurat, di mana kesalahan konten kecil bisa jadi mendesak.

Instal Google Play
1,6 jt
Rating di store
4.0
Ikon aplikasi Conecte SUS MEDIS

Hubungkan SUS

Rekam medis dan halaman panduan yang butuh pengiriman cepat untuk perubahan teks yang disetujui.

Instal Google Play
27,7 jt
Rating di store
4.6
Ikon aplikasi e-Título SOSIAL

e-Título

Alur kerja identitas sipil yang membutuhkan panduan aman versi di berbagai perangkat.

Instal Google Play
54,9 jt
Rating di store
4.8

Bukti pelanggan

Apa kata tim yang rilis dengan Capgo

5.0/5 dinilai oleh tim developer 9,400+ tim Baca ulasan

Kapil

Founder, NuTriQ

“Bisa push update OTA produksi secara instan tanpa menunggu siklus review App Store yang lama memberikan keuntungan operasional yang sangat besar.”

Potret Sergiu S

Sergiu S

Lead Developer, drivolino GmbH

“Plugin Capgo Capacitor Updater benar-benar mengubah cara kami merilis update. Yang dulu butuh berhari-hari, sekarang cuma butuh beberapa menit.”

Potret Luis Dominguez

Luis Dominguez

Yang membayar, Anirol

“Sejak saya mulai menggunakan Capgo, semuanya jadi lebih cepat, dan saya bisa memberikan waktu yang pantas bagi pengguna saya tanpa mengabaikan kehidupan sehari-hari.”

FAQ

Pertanyaan seputar direct updates

Kapan harus menggunakannya, cara setup, dan biaya saat peluncuran.

Haruskah kami menggunakan direct updates atau mode background default?

Gunakan mode default untuk sebagian besar rilis: tidak ada waktu tunggu saat peluncuran, dan pengguna mendapatkan update pada sesi berikutnya. Gunakan mode direct saat sesi yang dimulai setelah upload Anda harus menjalankan code terbaru, misalnya untuk memperbaiki checkout yang rusak atau perbaikan keamanan web-layer.

Dokumentasi perilaku update

Apa perbedaan antara atInstall, onLaunch, dan always?

atInstall menerapkan update segera hanya setelah instalasi baru atau update native app dari store, lalu berperilaku seperti mode default. onLaunch diterapkan segera saat aplikasi dimulai dari kondisi killed. always mengecek setiap kali aplikasi masuk foreground dan menerapkannya segera setelah download selesai, bahkan saat pengguna sedang menggunakan aplikasi.

Pengaturan updater

Mengapa plugin splash screen diperlukan?

Mode direct menerapkan update saat pengguna menunggu. Tanpa @capacitor/splash-screen, autoSplashscreen: true, dan launchAutoHide: false, pengguna mungkin melihat flicker atau UI lama sebelum reload. Dengan fitur tersebut, splash screen tetap muncul sampai update diterapkan atau updater mendeteksi tidak ada update yang diperlukan.

Penanganan splash screen

Bisakah kami mengaktifkan direct updates dengan live update?

No. autoUpdate ada di capacitor.config, yang dibaca ke aplikasi native saat build time. Kirim pengaturan baru ini lewat rilis store. Setelah itu, setiap live update akan mengikuti mode baru tersebut.

Dokumentasi kompatibilitas native

Config kami menggunakan directUpdate. Apakah itu masih didukung?

directUpdate sudah deprecated tapi masih terdeteksi. Nilainya sesuai dengan mode autoUpdate yaitu atInstall, onLaunch, dan always. Pindahkan pengaturan ke autoUpdate pada rilis native Anda berikutnya.

Pengaturan updater

Sampaikan perbaikan Anda di layar pertama

Coba mode direct update pada test build selama masa trial dan ukur waktu tunggu launch pada aplikasi Anda sendiri.

Uji coba gratis 14 hari. Tanpa kartu kredit.