Langsung ke konten

Panduan Onboarding CLI

Capgo CLI menyediakan onboarding interaktif untuk mengatur live updates pada aplikasi Capacitor Anda. Anda akan:

  1. ✅ Mendaftarkan aplikasi Anda di Capgo
  2. 🔌 Menginstal dan mengonfigurasi plugin updater
  3. 🚀 MendePLOY live update pertama Anda
  4. 📱 Menguji update di perangkat Anda

Perkiraan waktu: 10-20 menit (tergantung kecepatan internet dan waktu build Anda)

Jalankan perintah onboarding dengan key API Anda:

Jendela terminal
npx @capgo/cli@latest init [APIKEY]

Anda akan melihat pesan sambutan:

Capgo onboarding 🛫

CLI akan memandu Anda melalui 13 langkah interaktif:

Fase Setup (Langkah 1-6):

  • Periksa lingkungan pengembangan Anda (Xcode/Android Studio)
  • Tambahkan aplikasi Anda ke Capgo dan buat channel produksi
  • Instal @capgo/capacitor-updater plugin
  • Sisipkan code yang diperlukan ke aplikasi Anda
  • Opsional, aktifkan enkripsi end-to-end
  • Pilih platform untuk pengujian (iOS atau Android)

Fase Pengujian (Langkah 7-12):

  • Build aplikasi Anda dan jalankan di perangkat/simulator
  • Buat perubahan code yang terlihat (otomatis atau manual)
  • Upload bundle yang diperbarui ke Capgo
  • Lihat live update muncul di perangkat Anda secara real-time

Selesai (Langkah 13):

  • Aplikasi Anda sudah siap untuk live updates! 🎉

CLI memeriksa lingkungan pengembangan Anda untuk memastikan tools yang diperlukan sudah terpasang.

Yang dicek:

  • Xcode (hanya macOS) - untuk pengembangan iOS
  • SDK Android - untuk pengembangan Android

Kemungkinan hasil:

✅ Kedua environment ditemukan:

✅ Xcode detected - iOS development ready
✅ Android SDK detected - Android development ready

⚠️ Environment tidak ditemukan:

⚠️ Xcode not found
⚠️ Android SDK not found
❌ No development environment detected
📱 To develop mobile apps with Capacitor, you need:
• For iOS: Xcode (macOS only) - https://developer.apple.com/xcode/
• For Android: Android Studio - https://developer.android.com/studio

Pertanyaan yang mungkin muncul:

CLI akan membuat Anda login ke Capgo dan menambahkan aplikasi Anda ke akun Anda.

(spinner) Running: npm @capgo/cli@latest login ***
Login Done ✅
❓ Add {appId} in Capgo?

Jika ID aplikasi Anda sudah digunakan:

CLI akan menyarankan alternatif:

❌ App ID "com.example.app" is already taken
💡 Here are some suggestions:
1. com.example.app2
2. com.example.app3
3. com.example.app.new
4. com.example.app.app
❓ What would you like to do?

Anda dapat memilih saran atau memasukkan ID aplikasi kustom.

Channel memungkinkan Anda mengelola berbagai stream update untuk aplikasi Anda.

❓ Create default channel production for {appId} in Capgo?

Jika Anda memilih Ya:

(spinner) Running: npm @capgo/cli@latest channel add production {appId} --default
Channel add Done ✅ (or "Channel already added ✅")

Channel produksi akan dibuat dan diset sebagai default. Ini adalah opsi yang direkomendasikan untuk sebagian besar pengguna.

Jika Anda memilih No:

If you change your mind, run it for yourself with: "npm @capgo/cli@latest channel add production {appId} --default"

Anda perlu membuat dan mengonfigurasi channel secara manual nanti. Atau, Anda bisa:

  • Set the channel in your capacitor.config.ts file
  • Gunakan metode JavaScript setChannel() untuk mengatur channel secara dinamis
  • Konfigurasi channel nanti dari konsol web Capgo

CLI akan menginstal @capgo/capacitor-updater plugin yang kompatibel dengan versi Capacitor Anda.

❓ Automatic Install "@capgo/capacitor-updater" dependency in {appId}?

Kompatibilitas versi:

  • Capacitor 5: Instalasi @capgo/capacitor-updater v5
  • Capacitor 6: Instalasi @capgo/capacitor-updater v6
  • Capacitor 7: Instalasi @capgo/capacitor-updater v7
  • Capacitor 8+: Menginstal versi terbaru

Opsi instant updates:

Setelah instalasi, Anda akan ditanya:

❓ Do you want to set instant updates in {appId}?
Read more: https://capgo.app/docs/live-updates/update-behavior/#applying-updates-immediately

Jika Anda memilih Ya:

  • Update akan dikonfigurasi untuk langsung diterapkan saat aplikasi masuk ke background dan dibuka kembali
  • autoUpdate: 'always' dan autoSplashscreen: true akan ditambahkan ke config Anda
  • @capacitor/splash-screen akan diinstal jika belum ada, dengan launchAutoHide: false
  • Anda capacitor.config.ts akan diperbarui secara otomatis
  • Update Delta tetap aktif. Instant apply (always, atInstall, onLaunch) sebaiknya tetap menggunakan npx @capgo/cli@latest bundle upload --delta agar hanya file yang berubah yang diunduh dan pengguna tidak perlu menunggu unduhan zip penuh

Jika Anda memilih No:

  • Update akan menggunakan perilaku standar (unduh di background, terapkan saat restart berikutnya)
  • Anda selalu bisa mengaktifkan instant updates nanti dengan mengubah capacitor.config.ts

CLI akan otomatis menginjeksi code yang diperlukan ke dalam file aplikasi utama Anda.

❓ Automatic Add "CapacitorUpdater.notifyAppReady()" code and import in {appId}?

Apa yang ditambahkan:

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

Deteksi tipe proyek:

  • Nuxt.js: Membuat plugins/capacitorUpdater.client.ts
  • Framework lain: Menambahkan ke file entry utama Anda

Enkripsi end-to-end menambahkan lapisan keamanan ekstra untuk update Anda.

🔐 End-to-end encryption
✅ Use this for: Banking, healthcare, or apps with legal encryption requirements
⚠️ Note: Makes debugging harder - skip if you don't need it
❓ Enable end-to-end encryption for {appId} updates?

Jika Anda mengaktifkan enkripsi, CLI akan:

  1. Membuat kunci enkripsi
  2. Menawarkan untuk menyinkronkan konfigurasi Capacitor Anda

Pilih platform yang ingin Anda gunakan untuk pengujian selama onboarding.

📱 Platform selection for onboarding
This is just for testing during onboarding - your app will work on all platforms
❓ Which platform do you want to test with during this onboarding?
Options:
- iOS
- Android

CLI akan mem-build aplikasi Anda dan menyinkronkannya dengan Capacitor.

❓ Automatic build {appId} with "npm run build"?

Apa yang terjadi:

  1. Mendeteksi tipe project Anda
  2. Menjalankan build script Anda
  3. Mengeksekusi npx cap sync {platform}

Jika build script tidak ada:

Anda akan ditanya apakah ingin skip build atau tambahkan build script ke package.json.

Uji versi awal aplikasi Anda di perangkat atau simulator.

❓ Run {appId} on {PLATFORM} device now to test the initial version?

Jika Anda memilih Ya:

(spinner) Running: npx cap run {platform}
(device picker appears)
App started ✅
📱 Your app should now be running on your {platform} device with Capgo integrated
🔄 This is your baseline version - we'll create an update next

Sekarang saatnya menguji sistem update Capgo dengan membuat perubahan yang terlihat.

🎯 Now let's test Capgo by making a visible change and deploying an update!
❓ How would you like to test the update?
Options:
- Auto: Let Capgo CLI make a visible change for you
- Manual: I'll make changes myself

Mode otomatis: CLI akan secara otomatis memodifikasi file Anda untuk menambahkan banner uji yang terlihat atau perubahan.

Mode manual: Anda melakukan perubahan sendiri (misalnya, mengubah teks, warna, atau menambahkan elemen).

Penanganan versi:

❓ How do you want to handle the version for this update?
Options:
- Auto: Bump patch version ({currentVersion} → {nextVersion})
- Manual: I'll provide the version number

Build dengan perubahan:

❓ Build {appId} with changes before uploading?

Upload bundle aplikasi terbaru Anda ke Capgo.

❓ Upload the updated {appId} bundle (v{version}) to Capgo?

CLI menjalankan:

Jendela terminal
npx @capgo/cli@latest bundle upload

Prompt delta update (jika mode instant apply aktif):

💡 Instant updates are enabled in your config
Delta updates send only changed files instead of the full bundle
❓ Enable delta updates for this upload? (Recommended with instant updates)

Berhasil:

✅ Update v{version} uploaded successfully!
🎉 Your updated bundle is now available on Capgo

Saatnya melihat update ini bekerja!

🧪 Time to test the Capgo update system!
📱 Go to your device where the app is running

Untuk pembaruan instan:

🔄 IMPORTANT: Background your app (swipe up/press home button) and then reopen it
⏱️ The update should be downloaded and applied automatically

Untuk pembaruan standar:

📱 With standard updates, you will need to:
1. Background the app (swipe up/press home button) to start download
2. Wait a few seconds for download to complete
3. Background and foreground again to see the update

Pantau logs:

❓ Monitor Capgo logs to verify the update worked?

Jika Anda memilih Ya, Anda akan melihat live logs dari perangkat Anda yang menunjukkan proses pembaruan.

Welcome onboard ✈️!

Selamat! Anda berhasil mengatur Capgo live updates untuk aplikasi Anda.

Setelah menyelesaikan onboarding, Anda memiliki:

✅ Aplikasi Terdaftar

Aplikasi Anda terdaftar di Capgo dengan channel produksi

✅ Plugin Terpasang

Plugin Capacitor Updater terpasang dan dikonfigurasi

✅ Code Terintegrasi

Integrasi code ditambahkan ke aplikasi Anda

✅ Update Diuji

Anda berhasil deploy dan menerima live update

Untuk update selanjutnya, gunakan:

Jendela terminal
npm run build
npx @capgo/cli@latest bundle upload --channel=production

Untuk opsi deployment lainnya, lihat Deploy Live Update.

Jika Anda keluar dari proses onboarding, Anda bisa melanjutkannya kapan saja:

Jendela terminal
npx @capgo/cli@latest init [APIKEY]

Anda akan melihat:

You have already got to the step {stepNumber}/13 in the previous session
❓ Would you like to continue from where you left off?

Masalah: Baik Xcode maupun Android SDK tidak terdeteksi.

Solusi:

Masalah: App ID Anda sudah terdaftar.

Solusi: Pilih salah satu alternatif yang disarankan atau masukkan app ID kustom dalam notasi reverse domain.

Masalah: Build script tidak ditemukan di package.json.

Solusi: Tambahkan build script ke package.json:

{
"scripts": {
"build": "your-build-command"
}
}

Masalah: CLI tidak dapat menginjeksi integrasi code secara otomatis.

Solusi: Tambahkan code secara manual ke file utama Anda:

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

Masalah: Versi Capacitor Anda di bawah v5.

Solusi: Upgrade Capacitor ke v5 atau lebih tinggi:

Setelah onboarding selesai, jelajahi topik-topik ini:

Jika Anda menemui masalah selama onboarding:

Jika Anda menggunakan Panduan Onboarding CLI untuk merencanakan operasi dashboard dan API, hubungkan dengan Ringkasan API untuk detail implementasi di API Overview, Pendahuluan untuk detail implementasi di Introduction, Kunci API untuk detail implementasi di API Keys, Perangkat untuk detail implementasi di Devices, dan Bundle untuk detail implementasi di Bundles.