Senang Anda bertanya.
Saya tidak memberikan nasihat hukum. Saya hanya berbagi apa yang praktis dan luas digunakan oleh tim yang mengirimkan aplikasi Capacitor dengan aman.
Pembedaan penting adalah ini:
- Penyampaian Asli masih diperlukan untuk perilaku asli baru dan kemampuan utama.
- Update Hidup context
adalah untuk perbaikan JavaScript/web dan penyesuaian di dalam lingkungan aplikasi yang sudah ada. keduanya dapat menggunakan model ini, tetapi Anda harus menganggapnya sebagaiproses kerja yang aman dari kebijakan
, bukan sebagai celah.
apa yang diizinkan oleh Apple dan Google dalam istilah sederhana
- You can deliver code interpreted by the embedded web layer (HTML/CSS/JS) without resubmitting.
- Anda dapat mengirimkan __CAPGO_KEEP_0__ yang diinterpretasikan oleh lapisan web yang terintegrasi (HTML/CSS/JS) tanpa harus mengirimkannya kembali.
- Tidak boleh menggunakan saluran tersebut untuk penambahan fitur utama yang mengubah tujuan aplikasi.
Tidak boleh mengubah kontrol keamanan atau distribusi yang kritis melalui JS saja.
Apa itu Capgo?
Capgo digunakan untuk:
- mengatasi bug web secara cepat,
- perbaikan UI yang aman / gaya / alur,
- perbaikan logika kecil pada halaman yang sudah ada,
- eksperimen cepat untuk QA internal.
Capgo tidak digunakan untuk:
- menambahkan izin atau kemampuan native baru,
- mengirimkan kemampuan inti baru yang harus melewati tinjauan,
- mengubah perilaku tanda tangan, enkripsi, atau identitas paket.
Strategi rilis yang direkomendasikan
Pikirkan dalam dua jalur:
Track 1: track asli (ulasan aplikasi)
Pakai proses rilis normal Capacitor Anda untuk:
- perbarui plugin baru,
- perubahan shell atau manifest aplikasi,
- perubahan hak akses,
- perubahan fungsi khusus platform.
Perlu:
bun run build
bunx cap sync
# then App Store / Google Play submission flow
Track 2: track JS (Capgo)
Untuk perubahan runtime yang aman dan kecil:
bun run build
bunx @capgo/cli deploy --channel staging
bunx @capgo/cli deploy --channel production
Ini memberikan iterasi cepat tanpa unggah binary baru sementara menjaga binary itu stabil.
Bagaimana menghindari "oops, ini memerlukan rilis asli"
Sebelum setiap rilis Capgo, jalankan pintu gerbang ini dengan cepat:
- Apakah perubahan ini memerlukan dependensi native baru atau izin?
- Apakah perubahan ini mengubah kemampuan yang diiklankan aplikasi?
- Apakah perubahan ini mengubah batasan autentikasi/keamanan?
- Apakah kita dapat menggambarkannya sebagai perbaikan JavaScript yang tidak mempengaruhi?
Jika jawaban ya pada (1)-(3), kirimkan rilis native. Jika ya hanya pada (4), kirimkan melalui Capgo.
Apa ini berarti bagi tim kepatuhan?
- Anda menjaga bandwidth tinjauan aplikasi untuk perubahan yang bermakna.
- Anda mempertahankan kontrol rollback dan patching cepat.
- Anda mengurangi risiko produksi dengan menguji update di saluran sebelum peluncuran penuh.
Hal ini sama dengan pendekatan orang menggunakan pada program Capacitor besar di produksi: update cepat untuk perbaikan JS hanya, tinjauan native hanya untuk binari nyata.
Jika Anda ingin lebih dalam, pairkan ini dengan strategi lingkungan ketat berdasarkan saluran sehingga QA tidak menerima kesalahan produksi. Itu adalah cara Capgo-native untuk menjaga staging, beta, dan produksi bersih.
Lanjutkan dari Cara mengupdate aplikasi Capacitor JS tanpa tinjauan toko ulang
Jika Anda menggunakan How to update Capacitor JS apps without repeat store review untuk merencanakan persetujuan dan distribusi toko, hubungkannya dengan @capgo/capacitor-tinjauan-dalam-aplikasi untuk detail implementasi di @capgo/capacitor-tinjauan-dalam-aplikasi, Menggunakan @capgo/capacitor-tinjauan-dalam-aplikasi untuk kemampuan asli di Menggunakan @capgo/capacitor-tinjauan-dalam-aplikasi, @capgo/capacitor-pasar-asli untuk detail implementasi di @capgo/capacitor-pasar-asli, Menggunakan @capgo/capacitor-pasar-asli untuk kemampuan asli di Menggunakan @capgo/capacitor-pasar-asli, dan Capacitor Perbarui OTA: Panduan Persetujuan App Store Untuk konteks praktis dalam Capacitor Perbarui Aplikasi OTA: Panduan Persetujuan App Store.