Migrasi dari Capawesome Cloud ke Capgo
Copy sebuah prompt pengaturan dengan langkah instalasi dan panduan markdown lengkap untuk plugin ini.
⚡️ Capgo otomatisasi saluran, penghapusan bundle, pengembalian, analisis, dan CLI unggah natively. Gunakan panduan ini untuk melakukan langkah-langkah minimal yang diperlukan untuk migrasi dan secara opsional merekam perilaku kustom yang masih dibutuhkan.
Pendahuluan
Bab berjudul “Pendahuluan”- Kumpulkan konfigurasi Capawesome Cloud yang sudah ada (ID Aplikasi, saluran, kunci tanda tangan, CLI token) agar Anda dapat mengarsip atau memeriksainya kemudian.
- Instal plugin Capgo, hapus Capawesome SDK, dan panggil
CapacitorUpdater.notifyAppReady(). - Konfigurasi perilaku opsional (download manual, pin bundle, reload) jika Anda bergantung pada aliran tersebut saat ini.
Dengan Capgo Anda hanya perlu menginstal plugin kami dan panggil CapacitorUpdater.notifyAppReady()Semua yang lain—saluran, penghapusan bundle, pengembalian, analisis, dan CLI otomatisasi—diproses secara native. Bagian-bagian di bawah ini menjelaskan setiap tugas secara langsung.
Sebelum Anda memulai
Sebelum Anda memulai- Pastikan proyek Anda sudah menggunakan Capacitor 5 atau lebih baru.
- Instal Capgo CLI (
npm install -g @capgo/cli) jika Anda berencana untuk mengirim bundle dari CI/CD.
Langkah 1 – Instal Capgo dan hapus SDK Capawesome
Bagian berjudul “Langkah 1 – Instal Capgo dan hapus SDK Capawesome”npm uninstall @capawesome/capacitor-live-updatenpm install @capgo/capacitor-updaternpx cap syncItu adalah satu-satunya penggantian wajib. Capgo’s native code sudah termasuk dalam plugin; tidak ada bantuan JavaScript tambahan yang diperlukan.
Langkah 2 – Konfigurasi minimal
Bagian berjudul “Langkah 2 – Konfigurasi minimal”Pengaturan sebelumnya memerlukan pemetaan puluhan opsi dalam capacitor.config. Capgo mengenali proyek Anda secara otomatis, sehingga konfigurasi minimalnya seperti ini:
import { CapacitorConfig } from '@capacitor/cli'
const config: CapacitorConfig = { plugins: { CapacitorUpdater: { autoUpdate: true, autoDeletePrevious: true, periodCheckDelay: 10 * 60 * 1000, // optional: check every 10 minutes }, },}
export default configSemua flag manual yang disebutkan oleh Capawesome (defaultChannel, autoDeleteBundles, kebijakan penyimpanan, dll.) diatur melalui dashboard Capgo atau API. Anda hanya perlu mengganti kunci-kunci ini jika Anda ingin perilaku yang berbeda dari default Capgo.
Referensi cepat konfigurasi
Judul bagian “Referensi cepat konfigurasi”| Opsi Capawesome | Capgo setara | Apakah Anda perlu mengatur itu? |
|---|---|---|
appId | Diperoleh dari dashboard Capgo setelah Anda membuat proyek | Hanya jika Anda menggunakan beberapa proyek dalam satu eksekutor |
defaultChannel | Aturan saluran diatur di dashboard/API | Opsional; sebagian besar tim mengatur ini di sisi server |
autoDeleteBundles | autoDeletePrevious: true (default) | Sudah diaktifkan |
publicKey | Diatur di Capgo console | Hanya jika Anda memutar kunci secara manual |
maxVersions / penyimpanan | Kebijakan penyimpanan bundle | Dikonfigurasi secara sentral di Capgo (1 bulan default, 24 bulan maksimal) |
Langkah 3 – Panggil notifyAppReady() (hanya hook yang diperlukan)
Bagian berjudul “Langkah 3 – Panggil notifyAppReady() (hanya hook yang diperlukan)”The old workflow mengenalkan pendengar kustom (checkForUpdates(), retryDownload(), menyembunyikan layar splash, dll.). Capgo melakukan langkah-langkah tersebut secara native. Langkah API yang harus Anda panggil adalah:
import { CapacitorUpdater } from '@capgo/capacitor-updater'
CapacitorUpdater.notifyAppReady()Hal ini mengkonfirmasi bahwa aplikasi telah berjalan dengan sukses. Jika konfirmasi tidak pernah tiba, Capgo secara otomatis akan mengembalikan bundle—tidak perlu JavaScript tambahan.
Itu saja—Capgo mengelola pengecekan latar belakang, visibilitas layar splash, dan pengembalian secara native.
Opsional: jalankan logika kustom sebelum layar splash disembunyikan
import { CapacitorUpdater } from '@capgo/capacitor-updater'import { SplashScreen } from '@capacitor/splash-screen'
CapacitorUpdater.addListener('appReady', () => { // Run diagnostics or logging if you need to SplashScreen.hide()})
CapacitorUpdater.notifyAppReady()Langkah 4 – Peta panggilan API (banyaknya opsional)
Judul bagian “Langkah 4 – Peta panggilan API (banyaknya opsional)”Pada Capgo Anda biasanya membiarkan auto-updater berjalan; API manual tetap tersedia jika Anda ingin mengontrol sepenuhnya.
| Capawesome Cloud | Capgo setara | Apakah Anda membutuhkannya? |
|---|---|---|
LiveUpdate.fetchLatestBundle() | CapacitorUpdater.getLatest() | Hanya ketika mengimplementasikan alur download sendiri |
LiveUpdate.downloadBundle() | CapacitorUpdater.download() | Opsional: auto-update asli sudah mengunduh |
LiveUpdate.setNextBundle() | CapacitorUpdater.next() | Opsional: dashboard memasang bundle secara otomatis |
LiveUpdate.reload() | CapacitorUpdater.reload() | Opsional; Capgo memastikan bundle wajib setelah notifyAppReady() |
LiveUpdate.getCurrentBundle() | CapacitorUpdater.current() | Diagnostics opsional |
Jika Anda tetap dengan perilaku auto-update asli Anda dapat menghapus JavaScript Capawesome secara keseluruhan.
Contoh kontrol manual
Judul bagian “Contoh kontrol manual”Unduh bundle terbaru
import { CapacitorUpdater } from '@capgo/capacitor-updater'
const downloadUpdate = async () => { const latest = await CapacitorUpdater.getLatest() if (latest?.url) { const bundle = await CapacitorUpdater.download({ url: latest.url, version: latest.version, }) console.log('Bundle downloaded', bundle?.id) }}import { LiveUpdate } from '@capawesome/capacitor-live-update'
const downloadUpdate = async () => { const result = await LiveUpdate.fetchLatestBundle() if (result.downloadUrl) { await LiveUpdate.downloadBundle({ bundleId: result.bundleId, url: result.downloadUrl, }) console.log('Bundle downloaded') }}Atur bundle berikutnya
import { CapacitorUpdater } from '@capgo/capacitor-updater'
const setNextBundle = async () => { await CapacitorUpdater.next({ id: 'bundle-id-123' })}import { LiveUpdate } from '@capawesome/capacitor-live-update'
const setNextBundle = async () => { await LiveUpdate.setNextBundle({ bundleId: 'bundle-id-123' })}Terapkan bundle yang diunduh segera
import { CapacitorUpdater } from '@capgo/capacitor-updater'
const applyUpdate = async () => { await CapacitorUpdater.reload()}import { LiveUpdate } from '@capawesome/capacitor-live-update'
const applyUpdate = async () => { await LiveUpdate.reload()}Langkah 5 – Strategi Perbaruan: bagaimana Capgo mengelola mereka
Judul Bagian “Langkah 5 – Strategi Perbaruan: bagaimana Capgo mengelola mereka”Capawesome mendokumentasikan tiga strategi. Berikut ini adalah bagaimana mereka diinterpretasikan:
Latar Belakang Perbaruan
Judul Bagian “Latar Belakang Perbaruan”- Alur Kerja Sebelumnya: atur di code dan jadwalkan download secara manual.
- Capgo: diaktifkan secara default (
autoUpdate: true). Tidak perlu tambahan code.
Terbaru Selalu
Judul Bagian “Terbaru Selalu”- Alur sebelumnya: tambahkan
App.resumepengendali, panggildownload, kemudianset. - Capgo: pembaruan otomatis di latar belakang sudah melakukan periksa setelah resume. Anda hanya perlu pengendali manual jika Anda ingin interval kustom.
Opsional: periksa resume manual
import { App } from '@capacitor/app'import { CapacitorUpdater } from '@capgo/capacitor-updater'
App.addListener('resume', async () => { const latest = await CapacitorUpdater.getLatest() if (latest?.url) { const downloaded = await CapacitorUpdater.download({ url: latest.url, version: latest.version, }) if (downloaded) { await CapacitorUpdater.next({ id: downloaded.id }) } }})Perbarui paksa
Judul bagian “Perbarui paksa”- Alur sebelumnya: hubungkan logika prompt dan laksanakan reload.
- Menggunakan Capgo: tandai paket sebagai “wajib” di dashboard, kemudian dengarkan event (dilepaskan setelah
majorAvailable) untuk meminta pengguna untuk mengupgrade di dalam aplikasi.notifyAppReady()Langkah 6 – Mengembangkan paket
Judul bagian “Langkah 6 – Mengembangkan paket”
Jika Anda sebelumnya bergantung pada, __CAPGO_KEEP_0__ menawarkan alur kerja __CAPGO_KEEP_1__ yang sama, dan Anda juga dapat mengautomasi pengembangan secara keseluruhan melalui __CAPGO_KEEP_2__. capawesome live-update deploy, Capgo offers a similar CLI workflow, and you can also automate deployments entirely via API.
# Authenticate once (stores a token in your CI environment)capgo login
# Upload a new bundle (auto-detects platform/version)capgo bundle upload --path dist --channel productionBecause Capgo tracks bundle health automatically, you also get:
- __CAPGO_KEEP_0__
- Penyimpanan otomatis (satu bulan secara default) dengan batasan yang dapat disesuaikan hingga 24 bulan.
- Metrik latency waktu nyata di status.capgo.app/history.
Jadwal migrasi
Judul bagian “Jadwal migrasi”- Inventory & instalasi: 10 menit (
npm install, remove old plugin). - Konfigurasi & kesiapan: 5 menit (
notifyAppReady). - Sanity checksPengecekan kesadaran (sanity checks) : 15 menit (uji coba manual atau penggunaan listener).
- Pengembangan Pertama: 10 menit dengan Capgo CLI atau integrasi CI.
Dalam praktek tim selesai dalam kurang dari satu jam. Jika Anda menyediakan detail proyek Capawesome, kami bahkan dapat mengimport saluran dan daftar perangkat untuk Anda.
Capgo support
Judul bagian “Capgo support”- Migrasi Concierge: buat janji pada book.capgo.app/demo.
- Komunitas: bergabunglah dengan Capgo Discord.
- Peta Masalah: github.com/Cap-go/capacitor-updater/issues.
Capgo dibangun untuk keandalan jangka panjang: pembaruan delta asli, paket enkripsi, pengembalian otomatis, dan analitis yang tidak memerlukan JavaScript khusus. Setelah Anda beralih, Anda dapat menghapus perangkat lunak yang berat untuk perawatan dan biarkan platform melakukan pembaruan secara otomatis.
Teruskan dari Migrasi dari Capawesome Cloud ke Capgo
Judul bagian “Teruskan dari Migrasi dari Capawesome Cloud ke Capgo”Jika Anda menggunakan Migrasi dari Capawesome Cloud ke Capgo untuk merencanakan otomatisasi CI/CD, hubungkannya dengan Capgo CI/CD untuk alur kerja produk di Capgo CI/CD, Capgo Pembangunan Asli untuk alur kerja produk di Capgo Pembangunan Asli, Capgo Integrasi untuk alur kerja produk di Capgo Integrasi, Integrasi CI/CD untuk detail implementasi di Integrasi CI/CD, dan GitHub Integrasi Aksi untuk detail implementasi di GitHub Integrasi Aksi.