Saluran
Salin prompt pengaturan dengan langkah instalasi dan panduan markdown lengkap untuk plugin ini.
Saluran Update Langsung menunjuk ke bundle build JS tertentu dari aplikasi Anda yang akan dibagikan dengan perangkat apa pun yang telah dikonfigurasi untuk mendengarkan saluran tersebut untuk pembaruan. Ketika Anda install the Capgo Pembaruan Hidup SDK dalam aplikasi Anda, setiap biner native yang dikonfigurasi ke saluran tersebut akan memeriksa pembaruan yang tersedia setiap kali aplikasi dijalankan. Anda dapat mengubah saluran yang dituju pada saat apapun dan juga dapat kembali ke versi sebelumnya jika perlu.
Bagaimana perangkat memilih saluran (prioritas)
Bab berjudul āBagaimana perangkat memilih saluran (prioritas)āSaat perangkat memeriksa pembaruan, Capgo memutuskan saluran yang digunakan dalam urutan ini yang ketat (prioritas tertinggi terlebih dahulu):
- Pengaturan perangkat paksa (Dashboard) ā Pasang perangkat ID tertentu secara manual ke saluran. Gunakan untuk debugging darurat atau pengujian terkendali dengan pengguna nyata tunggal. Ini selalu menang.
- Oversai Cloud (per-perangkat) 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 biner tidak menghapusnya; menghapus entri perangkat.
- Plugin
setChannel()saluran lokal ā Dibuat ketika aplikasi memanggilsetChannel()dan backend memvalidasi bahwa saluran target memungkinkan penugasan sendiri. Saluran yang dipilih disimpan secara lokal pada perangkat tersebut, berlaku segera, dan tidak ditampilkan di UI Oversai Perangkat.
- Konfigurasi Capacitor
defaultChannel(versi uji default) ā Jika ada dicapacitor.config.*dan tidak ada saluran paksa/override/local, aplikasi dimulai pada saluran ini (misalnya, ). Intended untuk versi uji / build internal sehingga tester langsung mendarat pada saluran pre-release secara otomatis. Build produksi biasanya meninggalkan ini tidak diatur.beta,qa,pr-123Saluran Default Cloud (jalur utama ~99% pengguna) - ā Jika Anda menandai sebuah saluran default di dashboard, semua pengguna normal (tidak paksa, tidak Dashboard/__CAPGO_KEEP_0__ override, tidak plugin local channel, tidak konfigurasi defaultChannel) akan terhubung ke sini. Perubahan 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 mendarat pada default yang sesuai dengan platformnya. Meninggalkan saluran default cloud tidak diatur diperbolehkan; dalam hal ini perangkat harus menyesuaikan langkah 1ā4 untuk menerima update. API
Praktik terbaik:
- Tangani 1ā4 sebagai kecuali / lapisan pengujian; ketika Anda menetapkan default cloud, pengguna nyata harus mengalir ke dalamnya. Jika Anda memilih tidak menetapkan satu, jadilah sadar tentang bagaimana pengguna menghubungkan (biasanya melalui
defaultChanneldalam konfigurasi atau pengaturan per-device). - Hanya konfigurasi
defaultChanneldalam biner yang Anda kirim secara eksplisit kepada tester. Menyimpannya tidak terdefinisi menjaga logika produksi sentral di dashboard. - Pakai
setChannel()sangat jarang dalam produksiāutamanya untuk QA atau diagnostik sasaran.
Jika sebuah saluran dinonaktifkan untuk platform (iOS/Android/Electron toggle) ketika akan dipilih, proses seleksi melompatinya dan melanjutkan ke bawah daftar.
Ringkasan: Paksa > Dashboard/API Override > Plugin
setChannel()saluran lokal > KonfigurasidefaultChannel> Default Cloud.
Pengaturan Saluran Bawaan
āPengaturan Default ChannelāPengaturan awan default tidak wajib, tetapi biasanya berfungsi sebagai jalur default untuk perangkat baru. Tanpa satu, hanya perangkat yang sesuai dengan peta paksa, penggantian, atau defaultChannel di konfigurasi Capacitor yang akan menerima pembaruan. Ketika Anda memilih untuk menandai default, ingatlah pola-pola berikut:
- Pengaturan default tunggal (yang paling umum) ā Jika sebuah channel memiliki iOS, Android, dan Electron diaktifkan, maka menjadi default tunggal; perangkat tanpa penggantian akan menempel di sini.
- Pengaturan default khusus platform ā Jika Anda memisahkan channel berdasarkan platform (misalnya
ios-productiondengan hanya iOS diaktifkan,android-productiondengan hanya Android diaktifkan, danelectron-productiondengan hanya Electron diaktifkan), tandai setiap satu 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 nilai awal cloud, Anda tidak perlu mengulang nilai tersebut di konfigurasi Capacitor Andaābiarkan defaultChannel kosong untuk pembangunan produksi. Simpan defaultChannel untuk file biner yang Anda sengaja kirimkan kepada tester atau QA ketika Anda ingin mereka memulai di saluran non-produksi meskipun nilai awal cloud berbeda
Anda dapat mengubah nilai default kapan saja di dashboard. Ketika Anda mengganti nilai default, perangkat baru mengikuti aturan routing baru segera dan perangkat yang sudah ada mengikuti aturan keutamaan normal saat mereka memeriksa kembali
Pengaturan Saluran
Bagian berjudul āPengaturan SaluranāPada saat onboard, Anda membuat saluran pertama (banyak tim menamainya āProduksiā), tetapi tidak ada yang terkunciāAnda dapat menamai atau menghapus saluran apa pun kapan saja. Untuk menambahkan saluran tambahan kemudian:
- Kunjungi bagian āSaluranā di dashboard Capgo
- Klik tombol āSaluran Baruā
- Masukkan nama saluran dan klik āBuatā
Nama saluran dapat apa saja yang Anda inginkan. Strategi umum adalah untuk menyesuaikan nama saluran dengan tahapan pengembangan, seperti:
Development- untuk menguji pembaruan hidup di perangkat lokal atau emulatorQA- untuk tim QA Anda untuk memverifikasi pembaruan sebelum rilis yang lebih luasStaging- untuk tes akhir di lingkungan yang mirip produksiProduction- untuk versi aplikasi yang diterima pengguna akhir dari toko aplikasi
Konfigurasi Saluran di Aplikasi Anda
Bab berjudul āKonfigurasi Saluran di Aplikasi AndaāDengan saluran Anda yang dibuat, Anda perlu mengonfigurasi aplikasi Anda untuk mendengar saluran yang tepat. Dalam contoh ini, kita akan menggunakan saluran. Development saluran.
Buka file Anda capacitor.config.ts (atau capacitor.config.json) di editor Anda. Di bawah bagian plugins opsionalnya atur defaultChannel __CAPGO_KEEP_0__ tes build (internal / QA). Untuk build produksi, prefer menghilangkannya agar perangkat menggunakan Default Cloud kecuali secara eksplisit diatur.
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. }, },};Selanjutnya, bangun 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 sebelumnya dikonfigurasi.
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 yang paling penting adalah di bawah. Anda dapat mengonfigurasi hal-hal ini dari aplikasi web, CLI, atau Public API.
- Saluran default: Opsional untuk menandai saluran atau saluran spesifik platform yang perangkat baru terhubung ke. Lihat āPengaturan Saluran Defaultā untuk skenario routing.
- Pengatur filter platform: Aktifkan atau nonaktifkan pengiriman ke
iOS,Android, atauElectronperangkat per saluran. - Nonaktifkan auto downgrade di native: Menghalangi pengiriman update ketika versi aplikasi native perangkat lebih baru daripada bundle saluran (misalnya, perangkat pada 1.2.3 sementara saluran memiliki 1.2.2).
- Permitir build pengembangan: Izinkan update ke build pengembangan (bermanfaat untuk testing).
- Permitir perangkat emulator: Izinkan update ke perangkat emulator/simulator (bermanfaat untuk testing).
- Biarkan perangkat melakukan penugasan sendiri: Biarkan aplikasi beralih ke saluran ini pada waktu eksekusi menggunakan
setChannelJika dinonaktifkan,setChannelakan gagal untuk saluran ini.
Nonaktifkan Strategi Perbarui Otomatis
Judul bagian āNonaktifkan Strategi Perbarui OtomatisāGunakan ini untuk membatasi jenis-jenis perbarui yang akan disampaikan secara otomatis. Pilihan:
- utama: Menghalangi paket sasaran yang versi mayor lebih tinggi dari dasar native perangkat (
version_build). Contoh:1.2.3 -> 2.0.0ditolak;1.2.3 -> 1.9.0diperbolehkan. - minor: Menghalangi paket sasaran yang versi mayor atau minor berbeda dari
version_build. Contoh:1.2.3 -> 1.3.0terblokir;1.2.3 -> 1.2.4diperbolehkan. - patch: Mode paling ketat. Menghalangi perubahan apa pun pada nomor mayor, minor, atau patch. Perubahan sufiks saja yang diizinkan 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.1terblokir. - metadata: Tuntut 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 update akan ditolak sampai diatur. - tidak ada: Izinkan semua update sesuai dengan kompatibilitas semver.
Strategi ini membandingkan bundle target saluran dengan baseline asli yang dikirim sebagai version_builddan bukan bundle yang diunduh saat ini yang dikirim sebagai version_name.
Pelajari lebih lanjut dan contoh di strategi Non-aktifkan update di /docs/cli/perintah/#non-aktifkan-update-strategi.
Contoh (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-assignMenggunakan setChannel() dari Aplikasi Anda
Bagian berjudul āMenggunakan setChannel() dari Aplikasi AndaāSaluran setChannel() Metode ini memungkinkan aplikasi Anda untuk berganti saluran secara programatis pada waktu runtime. Hal ini sangat berguna untuk:
- Menu QA/debug di mana tester dapat berganti antara saluran
- Alur pilihan beta untuk mengaktifkan saluran
- Implementasi flag fitur
- Skenario uji A/B
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});Mengasosiasi Paket ke Saluran
Judul Bagian āMengasosiasi Paket ke SaluranāUntuk mengaktifkan pembaruan live, Anda perlu mengunggah bundle JS baru dan mengasosiasikannya ke saluran. Anda bisa melakukannya dalam satu langkah dengan Capgo CLI:
npx @capgo/cli@latest bundle upload --channel=DevelopmentIni 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 Anda juga bisa mengasosiasikan build ke saluran dari bagian āPaketā di __CAPGO_KEEP_0__ dashboard. Klik ikon menu di samping build dan pilih āAsosiasi ke Saluranā untuk memilih saluran untuk build tersebut.
You can also assign builds to channels from the āBundlesā section of the Capgo dashboard. Click the menu icon next to a build and select āAssign to Channelā to choose the channel for that build.
Judul Bagian āVersi Paket dan Saluranā
Perlu diingat bahwa paket di __CAPGO_KEEP_0__ adalah global untuk aplikasi Anda, bukan spesifik untuk saluran individu. Paket yang sama bisa diasosiasikan ke saluran yang berbeda-beda.Itās important to note that bundles in Capgo are global to your app, not specific to individual channels. The same bundle can be assigned to multiple channels.
When versi bundel Anda, kami merekomendasikan menggunakan versi semantik dengan __CAPGO_KEEP_0__ās Semver Tester dan identifikasi pra-rilis untuk bangunan khusus saluran. Misalnya, rilis beta mungkin versi sebagai semantic versioning with Capgoās Semver Tester Memudahkan komunikasi hubungan antara bangunan. 1.2.3-beta.1.
Jelas bahwa adalah pra-rilis dari
- Mengizinkan penggunaan nomor versi kembali di saluran, mengurangi kebingungan.
1.2.3-beta.1Mengaktifkan jalur rollback yang jelas. Jika Anda perlu kembali dari1.2.3. - Anda tahu
- adalah rilis stabil sebelumnya.
1.2.3Berikut adalah contoh cara Anda mungkin menyesuaikan versi bundel dengan pengaturan saluran yang umum:1.2.2saluran:
saluran:
Developmentsaluran:1.2.3-dev.1,1.2.3-dev.2MenggunakanQAsalah satu channel:1.2.3-qa.1,1.2.3-qa.2dan lain-lain.Stagingsalah satu channel:1.2.3-rc.1,1.2.3-rc.2dan lain-lain.Productionsalah satu channel:1.2.3,1.2.4dan lain-lain.
Menggunakan semver dengan identifikasi pra-rilis adalah pendekatan yang disarankan, tetapi tidak sepenuhnya diperlukan. Kunci adalah menemukan skema versi yang dengan jelas menyampaikan hubungan antara build Anda dan sejalan dengan proses pengembangan tim Anda. Mengembalikan Perbaruan Hidup
Judul bagian āMengembalikan Perbaruan Hidupā
Section titled āRolling Back a Live UpdateāJika Anda mengaktifkan pembaruan hidup yang memperkenalkan bug atau perlu diubah kembali, Anda dapat dengan mudah kembali ke versi sebelumnya. Dari bagian āSaluranā di dashboard:
- Klik nama saluran yang ingin Anda kembali
- Cari versi yang ingin Anda kembalikan dan klik ikon mahkota

- Konfirmasi aksi
Versi yang dipilih akan langsung menjadi versi aktif untuk saluran tersebut lagi. Aplikasi akan menerima versi yang dikembalikan pada saat mereka memeriksa pembaruan berikutnya.
Mengautomasi Pembaruan
Judul bagian āMengautomasi PembaruanāUntuk alur kerja yang lebih maju, Anda dapat mengautomasi pembaruan 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 pada saat Anda push ke cabang tertentu atau membuat rilis baru.
Cek tautan Integrasi CI/CD dokumen untuk mengetahui lebih lanjut tentang mengautomasi pembaruan hidup Capgo.
Mengirimkan ke Perangkat
Bab berjudul āMengirimkan ke PerangkatāSekarang Anda sudah memahami saluran, Anda siap untuk memulai mengirimkan pembaruan hidup ke perangkat nyata. Proses dasar adalah:
- Instal Capgo SDK di aplikasi Anda
- Konfigurasi aplikasi untuk mendengarkan saluran yang diinginkan Anda
- Unggah bangun dan alokasikan ke saluran tersebut
- Luncurkan aplikasi dan tunggu pembaruan!
Untuk walkthrough yang lebih rinci, lihat Pembaruan Hidup panduan. 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:
- Flag fitur untuk tingkat pengguna yang berbeda
- Pengujian A/B
- Rollout fitur secara bertahap
- Program uji coba beta
Belajar cara menerapkan kasus penggunaan maju ini dalam panduan kami: Bagaimana Membagi Pengguna Berdasarkan Paket dan Saluran untuk Flag Fitur dan Pengujian A/B.
Teruskan dari Saluran
Jika Anda menggunakanSaluran untuk merencanakan routing saluran dan rollout yang berstadium, hubungkannya dengan Jika Anda menggunakan Saluran untuk merencanakan routing saluran dan rollout yang berstadium, hubungkannya dengan Saluran untuk detail implementasi di Saluran, Saluran untuk detail implementasi di Saluran, Solusi Uji Beta untuk alur produk di Solusi Uji Beta, Solusi Target Versi untuk alur produk di Solusi Target Versi, dan Capgo Praktik Terbaik Lingkungan: Staging dengan Satu ID Aplikasi Mobile untuk konteks praktis di Capgo Praktik Terbaik Lingkungan: Staging dengan Satu ID Aplikasi Mobile.