Saluran
Salin prompt pengaturan dengan langkah instalasi dan panduan markdown lengkap untuk plugin ini.
Saluran Pembaruan Langsung menunjuk ke sebuah build bundle JS aplikasi yang akan dibagikan dengan perangkat apa pun yang telah dikonfigurasi untuk mendengarkan saluran tersebut untuk pembaruan. Ketika Anda menginstal Capgo Saluran Pembaruan Langsung SDK di aplikasi Anda, setiap binary native yang dikonfigurasi ke saluran tersebut akan memeriksa pembaruan yang tersedia setiap kali aplikasi dijalankan. Anda dapat mengubah build yang ditunjuk oleh saluran kapan saja dan juga dapat kembali ke build sebelumnya jika perlu.
Bagaimana perangkat memilih saluran (prioritas)
Bagaimana Perangkat Memilih Saluran (Prioritas)Ketika perangkat memeriksa pembaruan, Capgo memutuskan mana saluran yang digunakan dalam urutan ini (prioritas tertinggi terlebih dahulu):
- Peta Perangkat (Dashboard) ā Mengunci perangkat spesifik ke saluran tertentu secara manual. Gunakan untuk debugging darurat atau pengujian terkendali dengan pengguna asli tunggal.
- Overset Perangkat (per-device) melalui Dashboard atau API ā Dibuat ketika Anda mengubah saluran perangkat di dashboard atau melalui API. Gunakan untuk pengguna QA yang beralih antara saluran fitur / PR atau untuk mereproduksi masalah pengguna. Menginstal ulang binary tidak menghapusnya; menghapus entri perangkat.
- Plugin
setChannel()saluran lokal ā Dibuat ketika aplikasi memanggilsetChannel()dan backend memvalidasi bahwa saluran target memungkinkan pengasasan sendiri. Saluran yang dipilih disimpan secara lokal pada perangkat tersebut, efektif segera, dan tidak ditampilkan di UI Overset Perangkat.
- Capacitor config
defaultChannelā Jika ada di __CAPGO_KEEP_0__ā __CAPGO_KEEP_0__ configcapacitor.config.*dan tidak ada saluran paksa/override/local yang ada, aplikasi dimulai pada saluran ini (misalnyabeta,qa,pr-123). Direkayakan untuk TestFlight / build internal sehingga tester langsung berada di saluran pre-release otomatis. - Saluran Default Cloud (jalan utama ~99% pengguna) ā Jika Anda menandai saluran default di dashboard, semua pengguna normal (tidak paksa, tidak Dashboard/API override, tidak plugin local channel, tidak konfigurasi defaultChannel) akan menghubungkan ke sini. Perubahan ke saluran ini untuk mengeluarkan atau mengembalikan secara instanātidak ada binary baru. Jika Anda memiliki default platform khusus (misalnya, satu iOS-only, satu Android-only, satu Electron-only), setiap perangkat akan menghubungkan ke default yang sesuai dengan platformnya. Mengosongkan saluran default cloud diizinkan; dalam hal itu perangkat harus sesuai dengan langkah-langkah 1ā4 untuk menerima pembaruan.
Praktik terbaik:
- Tangani 1ā4 sebagai lapisan kecuali / pengujian; ketika Anda menetapkan default cloud, pengguna nyata harus mengalir ke dalamnya. Jika Anda memilih tidak menetapkan satu, maka Anda harus sengaja tentang bagaimana pengguna menghubungkan (biasanya melalui
defaultChanneldi konfigurasi atau perangkat pengguna override). - Hanya konfigurasi
defaultChanneldi binary yang Anda kirim secara eksplisit kepada tester. Mengosongkannya menjaga logika produksi tetap sentral di dashboard. - Gunakan
setChannel()sangat jarang di produksiāutamanya untuk QA atau diagnostik sasaran.
Jika saluran tertentu dinonaktifkan untuk platform (iOS/Android/Electron toggle) ketika akan dipilih, proses seleksi melompatinya dan melanjutkan ke daftar.
Ringkasan: Force > Dashboard/API Override > Plugin
setChannel()saluran lokal > KonfigurasidefaultChannel> Cloud Default.
Default Channel Behavior
Bahasa Judul āDefault Channel BehaviorāMengatur default cloud tidak wajib, tetapi biasanya berfungsi sebagai jalur default untuk perangkat baru. Tanpa satu, hanya perangkat yang sesuai dengan petaan paksa, penggantian, atau defaultChannel dalam konfigurasi Capacitor yang akan menerima update. Ketika Anda memilih untuk menandai default, perhatikan pola-pola berikut:
- Default tunggal (yang paling umum) ā Jika sebuah saluran memiliki iOS, Android, dan Electron diaktifkan, maka menjadi default tunggal; perangkat tanpa penggantian akan menempel di sini.
- Pengaturan default spesifik platform ā Jika Anda membagi saluran berdasarkan platform (misalnya,
ios-productiondengan hanya iOS diaktifkan,android-productiondengan hanya Android diaktifkan, danelectron-productiondengan hanya Electron diaktifkan), tandai masing-masing sebagai default untuk platformnya. Perangkat iOS pergi ke default iOS, perangkat Android pergi ke default Android, dan aplikasi Electron pergi ke default Electron.
Ingatlah bahwa default awan dan defaultChannel di capacitor.config.* keduanya mengisi lapisan keputusan yang sama. Jika Anda menetapkan default awan, Anda tidak perlu mengulangi nilai di konfigurasi Capacitor Andaābiarkan defaultChannel kosong untuk pembangunan produksi. Simpan defaultChannel untuk biner yang Anda sengaja kirim ke tester atau QA ketika Anda ingin mereka memulai di saluran non-produksi bahkan jika default awan berbeda.
Anda dapat mengubah default kapan saja di dashboard. Ketika Anda mengganti default, perangkat baru mengikuti routing baru segera dan perangkat yang ada mengikuti aturan keutamaan normal pada saat mereka memeriksa kembali.
Pengaturan Saluran
Judul bagian āPengaturan SaluranāPada saat proses onboarding Anda membuat saluran pertama (banyak tim menamainya āProduksiā), tetapi tidak ada yang terkunciāAnda dapat menamai atau menghapus saluran mana pun kapan saja. Untuk menambahkan saluran tambahan kemudian:
- Pergi ke bagian āSaluranā dari Capgo dashboard
- Klik tombol āChannel Baruā
- Masukkan nama untuk channel dan klik āBuatā
Nama channel dapat apa saja yang Anda inginkan. Strategi umum adalah mencocokkan channel dengan tahap pengembangan Anda, seperti:
Development- untuk menguji pembaruan hidup di perangkat lokal atau emulatorQA- untuk tim QA Anda untuk memverifikasi pembaruan sebelum rilis yang lebih luasStaging- untuk pengujian akhir di lingkungan produksi yang miripProduction- untuk versi aplikasi yang pengguna akhir menerima dari toko aplikasi
Mengatur Channel di Aplikasi Anda
Judul bagian āMengatur Channel di Aplikasi AndaāSetelah channel Anda dibuat, Anda perlu mengatur aplikasi Anda untuk mendengarkan channel yang tepat. Dalam contoh ini, kita akan menggunakan Development channel.
Buka capacitor.config.ts atau capacitor.config.jsonfile. Di bawah plugins bagian ini, Anda dapat memilih defaultChannel untuk build uji build produksi. Untuk build produksi, lebih baik Anda tidak mengatur ini agar perangkat menggunakan Default Cloudflare kecuali secara eksplisit diatur ulang.
import { CapacitorConfig } from '@capacitor/cli';
const config: CapacitorConfig = { plugins: { CapacitorUpdater: { // For a QA/TestFlight build ā testers start on the Development channel automatically. defaultChannel: 'Development', // Production builds usually omit this so users attach to the Cloud Default channel. }, },};Langkah berikutnya, buat aplikasi web Anda dan jalankan npx cap sync untuk menyalin file konfigurasi yang diperbarui ke proyek iOS, Android, dan Electron Anda. Jika Anda melewatkan langkah sinkronisasi ini, proyek native Anda akan terus menggunakan saluran yang telah diatur sebelumnya.
Opsi dan Strategi Saluran
Judul bagian āOpsi dan Strategi SaluranāSaluran memiliki beberapa opsi yang mengontrol siapa yang dapat menerima update dan bagaimana update disampaikan. Opsi-opsi paling penting ada di bawah. Anda bisa mengonfigurasi ini dari aplikasi web, CLI, atau API Publik.
- Saluran default: Opsionalnya tandai saluran atau saluran khusus platform yang perangkat baru terhubung ke. Lihat āPengaturan Saluran Defaultā untuk skenario routing.
- Pengguna filter platform: Aktifkan atau nonaktifkan pengiriman ke
iOS,Android,Electronperangkat per saluran. - Matikan auto downgrade di native: Menghambat pengiriman pembaruan ketika versi aplikasi native perangkat lebih baru dari bundle saluran (misalnya, perangkat pada 1.2.3 sementara saluran memiliki 1.2.2).
- Izinkan bangunan pengembangan: Izinkan pembaruan ke bangunan pengembangan (bermanfaat untuk tes).
- Izinkan perangkat emulator: Izinkan pembaruan ke emulator/simulator (bermanfaat untuk tes).
- Izinkan perangkat penugasan sendiri: Biarkan aplikasi berganti ke saluran ini pada waktu runtime menggunakan
setChannelJika dinonaktifkan,setChannelakan gagal untuk saluran ini.
Strategi Auto Update yang Diblokir
Judul bagian āStrategi Auto Update yang DiblokirāGunakan ini untuk membatasi jenis-jenis pembaruan yang akan secara otomatis disampaikan oleh saluran. Pilihan:
- versi utama: Menghalangi target bundle yang versi utamanya lebih tinggi dari basis native perangkat (
version_buildContoh:1.2.3 -> 2.0.0is diblokir;1.2.3 -> 1.9.0diperbolehkan. - minor: Mengblokir suatu bundle target yang versi mayor atau minor berbeda dari
version_build. Contoh:1.2.3 -> 1.3.0diblokir;1.2.3 -> 1.2.4diperbolehkan. - patch: Mode paling ketat. Mengblokir perubahan apa pun pada nomor mayor, minor, atau patch. Hanya perubahan sufiks yang diperbolehkan sementara
MAJOR.MINOR.PATCHtetap identik. Contoh:1.0.0-beta.1 -> 1.0.0-beta.2diperbolehkan,1.0.0+build.1 -> 1.0.0+build.2diperbolehkan,1.0.0 -> 1.0.1diblokir. - metadata: Memerlukan versi update minimum metadata pada setiap bundle. Konfigurasi melalui CLI menggunakan
--min-update-versionatau--auto-min-update-version. Jika tidak ada, saluran tersebut akan ditandai tidak terkonfigurasi dan pembaruan akan ditolak sampai diatur. - none: Izinkan semua pembaruan sesuai dengan kompatibilitas semver Strategi-strategi ini membandingkan bundle target saluran terhadap basis native yang dikirim sebagai.
, bukan bundle yang diunduh saat ini yang dikirim sebagai version_buildPelajari lebih lanjut detail dan contoh di Strategi Nonaktifkan Pembaruan di /docs/__CAPGO_KEEP_0__/perintah/#nonaktifkan-pembaruan version_name.
Contoh (cli):
Example (CLI):
# Block major updates on the Production channelnpx @capgo/cli@latest channel set production com.example.app \ --disable-auto-update major
# Allow devices to self-assign to the Beta channelnpx @capgo/cli@latest channel set beta com.example.app --self-assignBagian berjudul āMenggunakan setChannel() dari Aplikasi Andaā
SaluranMengizinkan aplikasi Anda untuk berganti saluran secara programatis pada waktu runtime. Ini sangat berguna untuk: setChannel() Menu QA/debug di mana tester dapat berganti antara saluran
- Alur penerimaan program beta
- Implementasi flag fitur
- Skenario uji coba A/B
- Salin ke clipboard
import { CapacitorUpdater } from '@capgo/capacitor-updater';
// Switch to the beta channelawait CapacitorUpdater.setChannel({ channel: 'beta' });
// Optionally trigger an immediate update check after switchingawait CapacitorUpdater.setChannel({ channel: 'beta', triggerAutoUpdate: true});Pengalokasian Paket ke Saluran
Bab berjudul āPengalokasian Paket ke SaluranāUntuk mengaktifkan pembaruan live, Anda perlu mengunggah bundle JS baru dan mengalokasikannya ke saluran. Anda bisa melakukannya dalam satu langkah dengan menggunakan Capgo CLI:
npx @capgo/cli@latest bundle upload --channel=DevelopmentLangkah ini akan mengunggah aset web yang dibangun dan mengatur bundle baru sebagai build aktif untuk saluran. Aplikasi-aplikasi yang dikonfigurasi untuk mendengarkan saluran tersebut akan menerima pembaruan pada saat mereka memeriksa pembaruan berikutnya. Development Salinan ke clipboard
Anda juga dapat menugaskan bangun dari bagian āBundlesā dari Capgo dashboard. Klik ikon menu di samping bangun dan pilih āTugaskan ke Saluranā untuk memilih saluran untuk bangun tersebut.
Versi Paket dan Saluran
Judul bagian āVersi Paket dan SaluranāPerlu diingat bahwa paket dalam Capgo adalah global untuk aplikasi Anda, bukan spesifik untuk saluran individu. Paket yang sama dapat ditugaskan ke beberapa saluran.
Ketika Anda melakukan versi paket, kami merekomendasikan menggunakan versi semantik dengan Capgoās Semver Tester dan identifikasi pre-release untuk bangun spesifik saluran. Misalnya, rilis beta mungkin versi sebagai 1.2.3-beta.1.
Dengan cara ini memiliki beberapa keuntungan:
- Mengkomunikasikan hubungan antara bangun secara jelas.
1.2.3-beta.1Tampaknya jelas bahwa ini adalah pre-release dari1.2.3. - Mengizinkan penggunaan nomor versi kembali di saluran, mengurangi kebingungan.
- Mengaktifkan jalur rollback yang jelas. Jika Anda perlu kembali dari
1.2.3Apakah Anda tahu1.2.2adalah rilis stabil sebelumnya.
Contoh berikut menunjukkan cara Anda mungkin menyesuaikan versi bundle Anda dengan pengaturan saluran biasa:
Developmentsaluran:1.2.3-dev.1,1.2.3-dev.2dan seterusnya.QAsaluran:1.2.3-qa.1,1.2.3-qa.2dan seterusnya.Stagingsaluran:1.2.3-rc.1,1.2.3-rc.2dan seterusnya.Productionsaluran:1.2.3,1.2.4dan seterusnya.
Menggunakan semver dengan identifikasi pre-release adalah pendekatan yang direkomendasikan, tetapi tidak secara ketat diperlukan. Kunci adalah menemukan skema versi yang dengan jelas menyampaikan hubungan antara build Anda dan berpadu dengan proses pengembangan tim Anda.
Kembali ke Versi Hidup
Bab berjudul āKembali ke Versi HidupāJika Anda mengunduh versi hidup yang memperkenalkan bug atau perlu diubah kembali, Anda dapat dengan mudah kembali ke build sebelumnya. Dari bagian āSaluranā dashboard:
- Pilih nama saluran yang ingin Anda kembali ke
- Cari build yang ingin Anda kembalikan dan klik ikon mahkota

- Konfirmasi aksi
Build yang dipilih akan langsung menjadi build aktif untuk saluran tersebut lagi. Aplikasi akan menerima versi yang dikembalikan pada saat mereka memeriksa update berikutnya.
Mengautomasi Pengunduhan
Bab berjudul āMengautomasi PengunduhanāUntuk alur kerja yang lebih maju, Anda dapat mengautomatisasi pengiriman update hidup Anda sebagai bagian dari pipeline CI/CD Anda. Dengan mengintegrasikan Capgo ke dalam proses pembangunan Anda, Anda dapat mengunggah bundle baru secara otomatis dan menugaskan mereka ke saluran ketika Anda push ke cabang-cabang tertentu atau membuat rilis baru.
Cek tautan ini Integrasi CI/CD dokumen untuk mempelajari lebih lanjut tentang mengautomatisasi update hidup Capgo.
Mengirimkan ke Perangkat
Judul bagian āMengirimkan ke PerangkatāSekarang Anda sudah memahami saluran, Anda siap untuk memulai mengirimkan update hidup ke perangkat nyata. Proses dasar adalah:
- Pasang Capgo SDK di aplikasi Anda
- Konfigurasi aplikasi untuk mendengarkan saluran yang diinginkan Anda
- Unggah build dan tugaskan ke saluran tersebut
- Luncurkan aplikasi dan tunggu update!
Untuk walkthrough yang lebih rinci, lihat Deploying Live Updates Petunjuk. Selamat mengupdate!
Penggunaan Saluran Lanjutan: Segmentasi Pengguna
Bab berjudul āPenggunaan Saluran Lanjutan: Segmentasi PenggunaāSaluran dapat digunakan untuk lebih dari hanya tahap pengembangan. Mereka adalah alat yang kuat untuk segmentasi pengguna, memungkinkan fitur seperti:
- Bendera fitur untuk tingkat pengguna yang berbeda
- Pengujian A/B
- Pengaktifan fitur secara bertahap
- Program uji coba beta
Belajar cara menerapkan kasus penggunaan lanjutan ini dalam panduan kami: Bagaimana Mengsegmentasikan Pengguna berdasarkan Paket dan Saluran untuk Bendera Fitur dan Pengujian A/B.
Teruskan dari Saluran
Bagian berjudul āTeruskan dari ChannelāJika Anda menggunakan Channel untuk merencanakan routing channel dan peluncuran tahap demi tahap, hubungkan dengan Channel untuk detail implementasi di Channel Channel untuk detail implementasi di Channel Solusi Pengujian Beta untuk alur kerja produk di Solusi Pengujian Beta Solusi Target Versi untuk alur kerja produk di Solusi Target Versi Capgo Praktik Terbaik Lingkungan: Staging dengan Satu ID Aplikasi Mobile untuk konteks praktis di Capgo Praktik Terbaik Lingkungan: Staging dengan Satu ID Aplikasi Mobile