Butuh pembaruan aplikasi yang lebih cepat tanpa penundaan app store? Capgo memungkinkan Anda memberikan pembaruan Over-the-Air (OTA) yang aman secara instan kepada pengguna Anda. Lewati tinjauan app store dan jaga aplikasi Anda tetap up-to-date dengan mudah.
Poin Penting:
- Apa itu Capgo? Platform open-source untuk pembaruan langsung di aplikasi Capacitor
- Mengapa OTA Updates? Hemat waktu, tingkatkan pengalaman pengguna, dan perbaiki bug dengan cepat
- Bagaimana Cara Memulai?
- Instal plugin Capgo:
npm install @capgo/capacitor-updater
- Konfigurasi aplikasi Anda dengan API key
- Gunakan channel seperti “production” atau “beta” untuk peluncuran yang ditargetkan
- Instal plugin Capgo:
- Fitur Lanjutan: Enkripsi end-to-end, penanganan kesalahan, dan integrasi CI/CD
Dokumentasi Capgo (capgoapp/docs) menyediakan instruksi langkah demi langkah untuk pengaturan, keamanan, dan pemecahan masalah. Dari instalasi hingga konfigurasi lanjutan, ini adalah panduan lengkap Anda untuk pembaruan yang mulus.
Capgo, Plugin CapacitorJs untuk Pembaruan Langsung
Menggunakan Dokumentasi Capgo
Menavigasi dokumentasi secara efektif sangat penting saat bekerja dengan pembaruan OTA. Dokumentasi Capgo menawarkan panduan rinci untuk mengintegrasikan pembaruan langsung ke aplikasi Capacitor.
Di Mana Menemukan Dokumentasi
Anda dapat mengakses dokumentasi Capgo di capgoapp/docs [1]. Dokumentasi ini disusun dalam bagian-bagian berdasarkan tujuan spesifik:
Bagian | Tujuan | Topik Utama |
---|---|---|
Getting Started | Pengaturan awal | Langkah instalasi, pengaturan API key |
Configuration | Pengaturan inti | Konfigurasi plugin, pengaturan lingkungan |
API Reference | Detail teknis | Metode, parameter, nilai return |
Security | Langkah perlindungan | Pengaturan enkripsi, verifikasi tanda tangan |
Troubleshooting | Pemecahan masalah | Masalah umum, alat diagnostik |
Istilah dan Konsep Penting
Berikut beberapa istilah kunci yang akan Anda temui:
- Channels: Ini adalah aliran pembaruan yang digunakan untuk mengontrol distribusi versi. Misalnya, Anda bisa mengatur channel “production”, “beta”, dan “staging” untuk melayani kelompok pengguna yang berbeda [4]
- Update Policies: Ini mendefinisikan bagaimana pembaruan disampaikan dan diterapkan. Opsi termasuk unduhan otomatis, waktu instalasi, dan prompt pengguna [1]
- App State Listeners: Komponen ini melacak apakah aplikasi berada di foreground atau background [4]
- Bundles: File pembaruan yang dikemas berisi versi baru aplikasi Anda, termasuk aset, perubahan kode, dan pembaruan konfigurasi [4]
Contoh Kode dan Tutorial
Dokumentasi menyediakan contoh kode untuk menyederhanakan integrasi. Berikut contoh dasar menggunakan TypeScript/JavaScript:
import { CapacitorUpdater } from '@capgo/capacitor-updater'
// Initialize the updaterawait CapacitorUpdater.notifyAppReady()
Untuk kasus penggunaan yang lebih kompleks, dokumentasi mencakup contoh dunia nyata [2][3], seperti:
- Beralih channel untuk A/B testing
- Alur pembaruan kustom dengan prompt pengguna
- Menangani kesalahan dan menerapkan rollback
- Mengintegrasikan pembaruan dengan pipeline CI/CD
Setiap tutorial juga menyoroti pertimbangan kinerja dan aspek keamanan, membantu Anda membuat keputusan yang tepat. Dokumentasi sering diperbarui untuk mencakup fitur terbaru dan praktik terbaik [1]
Untuk detail implementasi, lihat panduan pengaturan selanjutnya.## Pengaturan Update OTA
Atur update OTA di Capgo untuk memperlancar proses deployment Anda. Ikuti langkah-langkah dan tips berikut untuk konfigurasi yang mudah.
Langkah-Langkah Dasar
Mulai dengan menginstal plugin Capgo di proyek Capacitor Anda:
npm install @capgo/capacitor-updaternpx cap sync
Selanjutnya, perbarui file capacitor.config.json
Anda dengan Capgo API key Anda:
{ "plugins": { "CapacitorUpdater": { "autoUpdate": true, "apiKey": "YOUR_API_KEY_HERE" } }}
Kemudian, inisialisasi updater di file utama aplikasi Anda untuk mendeteksi pembaruan:
import { CapacitorUpdater } from '@capgo/capacitor-updater';await CapacitorUpdater.notifyAppReady();
Setelah selesai, Anda dapat mengatur channel untuk mengelola berbagai aliran pembaruan.
Pengaturan Channel Update
Atur channel update Anda sesuai kebutuhan deployment:
Tipe Channel | Tujuan | Kasus Penggunaan |
---|---|---|
Production | Rilis stabil | Pengguna umum |
Staging | Pengujian pra-rilis | Tim QA dan beta tester |
Beta | Pengujian fitur | Early adopter |
Untuk mengunggah pembaruan ke channel tertentu, gunakan Capgo CLI:
npx @capgo/cli upload -c production
Metode Update
Capgo menyediakan dua cara utama untuk menangani pembaruan:
Update Otomatis
Aktifkan pembaruan otomatis dengan mengatur autoUpdate: true
dalam konfigurasi Anda. Ini memastikan pembaruan diterapkan di latar belakang tanpa upaya tambahan dari developer.
Update Manual
Untuk kontrol lebih, Anda dapat mengelola pembaruan secara manual. Gunakan pola berikut untuk memeriksa dan menerapkan pembaruan:
// Check for updatesconst update = await CapacitorUpdater.download();
// Install when readyif (update) { await CapacitorUpdater.set(update);}
Untuk pembaruan penting, Anda dapat meminta persetujuan pengguna sebelum melanjutkan:
if (update.version > currentVersion) { const userConsent = await showUpdatePrompt(); if (userConsent) { await CapacitorUpdater.set(update); }}
Anda juga dapat menargetkan grup pengguna tertentu dengan ID dan channel khusus:
await CapacitorUpdater.setCustomId('beta-tester-123');await CapacitorUpdater.setChannel('beta');
Terakhir, pastikan untuk menyertakan penanganan kesalahan dan opsi rollback:
try { await CapacitorUpdater.set(update);} catch (error) { await CapacitorUpdater.reset(); // Revert to the last working version console.error('Update failed:', error);}
Dengan langkah-langkah ini, sistem update OTA Anda siap digunakan. Jelajahi pengaturan lanjutan untuk menyesuaikan proses pembaruan lebih lanjut.
sbb-itb-f9944d2
Pengaturan Lanjutan
Tingkatkan pengaturan update OTA Capgo Anda dengan langkah-langkah keamanan tambahan dan konfigurasi pembaruan yang fleksibel. Opsi ini memastikan pengalaman pembaruan yang aman dan lancar sambil memenuhi pedoman app store.
Fitur Keamanan
Capgo menyediakan protokol keamanan yang kuat untuk melindungi bundle pembaruan dan mengirimkannya secara aman kepada pengguna. Platform ini menggunakan enkripsi end-to-end dengan kriptografi kunci publik untuk semua pembaruan [1]. Berikut cara mengaktifkan fitur keamanan utama:
// Enable bundle verificationawait CapacitorUpdater.setVerifyBundles(true);
// Configure encryption settingsawait CapacitorUpdater.configure({ encryption: { enabled: true, failOnError: true }});
Komponen utama sistem perlindungan bundle meliputi:
Fitur Keamanan | Deskripsi | Implementasi |
---|---|---|
Integritas Bundle | Memverifikasi keaslian paket dengan tanda tangan kriptografis | Otomatis diaktifkan dengan setVerifyBundles() |
Perlindungan Rollback | Kembali ke versi stabil jika pembaruan gagal | Tertanam dalam proses pembaruan |
Kontrol Akses | Mengelola pembaruan dengan izin berbasis peran | Dikonfigurasi melalui dashboard |
Pengaturan Perilaku Update
Anda dapat menyesuaikan bagaimana pembaruan disampaikan dan diinstal menggunakan event listener dan opsi konfigurasi. Sesuaikan waktu dan interaksi pengguna untuk pembaruan dengan pengaturan ini:
// Listen for when an update is availableCapacitorUpdater.addListener('updateAvailable', async (info) => { if (info.version > currentVersion) { // Custom update logic based on app state const isAppInactive = await checkAppState(); if (isAppInactive) { await CapacitorUpdater.download(); } }});
// Monitor download completionCapacitorUpdater.addListener('downloadComplete', (info) => { console.log(`Update ${info.version} ready to install`); // Implement custom installation timing if desired});
Untuk peluncuran bertahap, Anda dapat mengonfigurasi distribusi pembaruan langsung melalui dashboard atau dengan kode:
// Set custom update conditions for a gradual rolloutawait CapacitorUpdater.configure({ rollout: { percentage: 25, // Start with 25% of users timeInterval: 24 // Increase rollout percentage every 24 hours }});
Untuk menangani perilaku terkait versi tertentu:
// Handle version-specific update failuresCapacitorUpdater.addListener('updateFailed', async (info) => { if (info.error.code === 'VERSION_MISMATCH') { await CapacitorUpdater.reset(); // Revert to the last stable version // Optionally, handle error notification here }});
Pengaturan ini memastikan pembaruan dapat diandalkan sambil memungkinkan Anda menyesuaikan prosesnya dengan kebutuhan aplikasi Anda. Selalu uji pembaruan secara menyeluruh di lingkungan staging Capgo sebelum meluncurkannya ke produksi [2].
Panduan Pemecahan Masalah
Log kesalahan dan alat bawaan Capgo membantu mengatasi tantangan update OTA sambil menjaga aplikasi Anda tetap sesuai dengan persyaratan store.### Masalah Umum dan Solusi
Berikut beberapa masalah tipikal dan cara mengatasinya:
-
Unduhan Gagal
Gejala: Unduhan berhenti atau gagal selesai
Solusi: Periksa koneksi jaringan, konfirmasi URL pembaruan valid, dan tambahkan mekanisme pengulangan untuk menangani gangguan -
Konflik Versi
Gejala: Pembaruan gagal diinstal atau menyebabkan ketidakstabilan aplikasi
Solusi: Gunakan nomor versi yang jelas untuk menghindari konflik dan terapkan opsi rollback untuk keamanan -
Kesalahan Instalasi
Gejala: Pembaruan gagal atau memicu rollback otomatis
Solusi: Pastikan Anda memanggilnotifyAppReady()
setelah pembaruan berhasil untuk mencegah rollback
Untuk pembaruan lebih dari 50MB, memecahnya menjadi file yang lebih kecil dapat meningkatkan kinerja pada perangkat Android [5]
Gunakan pencatatan error yang detail untuk menangkap masalah lebih awal. Misalnya, terapkan listener ini:
CapacitorUpdater.addListener('updateFailed', (error) => { console.log(`Update failed: ${error.code}`); logUpdateError({ errorCode: error.code, deviceInfo: error.device, timestamp: new Date().toISOString() });});
Dengan menggabungkan pencatatan error dengan pemeriksaan awal, Anda dapat menangani masalah ini secara efektif sebelum fokus pada kepatuhan
Aturan App Store
Perbaikan teknis saja tidak cukup - pembaruan Anda juga perlu selaras dengan pedoman app store
Persyaratan Apple App Store:
- Transparansi Pengguna: Informasikan pengguna dengan jelas tentang konten pembaruan dan dapatkan persetujuan mereka
- Fungsi Inti: Pastikan fitur utama aplikasi Anda tetap utuh seperti yang ditinjau
- Langkah Keamanan: Gunakan metode aman untuk mentransmisikan pembaruan
Implementasi Android:
await CapacitorUpdater.configure({ updateNotification: { title: "Update Available", message: "A new version is available. Please update to access the latest features.", requireUserConsent: true }});
Praktik Terbaik:
- Kontrol Versi: Gulirkan pembaruan secara bertahap untuk mengurangi konflik
- Notifikasi Pembaruan: Berikan peringatan pembaruan yang jelas dan ramah pengguna
- Keamanan: Verifikasi integritas bundle dan gunakan enkripsi untuk melindungi data
Ringkasan
Bagian ini menyatukan ide-ide utama dari panduan
Dokumentasi Capgo memberikan instruksi yang jelas untuk mengintegrasikan pembaruan OTA ke dalam aplikasi Capacitor sambil tetap mematuhi peraturan app store
Menggunakan sumber daya Capgo, pengembang dapat mengimplementasikan fitur penting seperti enkripsi end-to-end dan integrasi CI/CD, mencakup semuanya dari pengaturan awal hingga konfigurasi lanjutan [1]
Area Implementasi Utama
Aspek | Fokus Utama | Dimana Menemukannya |
---|---|---|
Keamanan | Enkripsi dan pemeriksaan integritas | Bagian Fitur Keamanan |
Kepatuhan | Memenuhi persyaratan Apple dan Android | Panduan Aturan App Store |
Manajemen Pembaruan | Kontrol versi dan opsi rollback | Panduan Metode Pembaruan |
Penanganan Error | Langkah pencatatan dan pemecahan masalah | Panduan Pemecahan Masalah |
Area-area ini membentuk tulang punggung sistem manajemen pembaruan Capgo
CLI dan alat analitik Capgo menyederhanakan pengelolaan pembaruan sepanjang siklus hidup aplikasi Anda [1]
Untuk dukungan lebih lanjut, Anda dapat menjelajahi sumber daya tambahan seperti dokumentasi API, proyek contoh, dan forum komunitas [2]