Lompat ke Konten

FAQ

Discord Jika Anda memiliki pertanyaan yang tidak terjawab di sini, silakan bertanya! Baik itu dengan membuka isu atau bertanya di kerja.

Code push, juga dikenal sebagai “penyegaran perangkat keras secara jarak” (OTA) adalah layanan cloud yang memungkinkan pengembang Capacitor untuk mengirimkan penyegaran ke aplikasi mereka di produksi. Capgo saat ini berfungsi pada Android, iOS, dan Electron.

“Code Push” adalah referensi ke nama fitur deploy yang digunakan oleh komunitas React Native dari Microsoft dan Expo, tidak salah satu yang mendukung Capacitor.

Apa perbedaan antara bundle dan rilis?

Bagaimana perbedaan antara bundle dan rilis?

Kami menggunakan istilah “rilis” untuk berarti mempersiapkan file biner untuk toko aplikasi. Untuk kemudian menghasilkan bundle, Capgo harus mengetahui file biner yang dikirim ke toko aplikasi secara tepat.

Kami menggunakan istilah “bundle” untuk berarti patch yang dapat diterapkan pada rilis untuk memperbarui ke versi baru code. npx @capgo/cli@latest bundle upload Perintah ini digunakan untuk menghasilkan bundle dari code lokal Anda yang baru, kemudian dikirimkan ke pengguna Anda.

Bagaimana roadmap?

Bagaimana roadmap?

Board proyek kami juga terbuka dan dapat ditemukan di: https://github.com/orgs/Cap-go/projects

Tim kami juga beroperasi secara terbuka, sehingga Anda dapat melihat apa yang kami kerjakan kapan saja. Kami senang menjawab pertanyaan Anda tentang roadmap atau prioritas kami melalui Github issues atau Discord.

Apakah saya dapat menggunakan Capgo dengan tim saya?

Judul bagian “Apakah saya bisa menggunakan Capgo bersama tim saya?”

Ya! Semua paket mendukung pengembang tak terbatas. Kami hanya membatasi metrik aplikasi (MAU, penyimpanan, dan bandwidth) untuk setiap organisasi.

Lihat Tim untuk informasi lebih lanjut.

Apakah Capgo menyimpan kode sumber saya code?

Judul bagian “Apakah Capgo menyimpan kode sumber saya code?”

Tidak. Server Capgo tidak pernah melihat kode sumber code. Ketika Anda menjalankan npx @capgo/cli@latest bundle upload, Capgo menyimpan file zip dari code yang telah di-minifikasi/di-compile - versi code yang sama seperti yang diterima oleh browser, bukan kode sumber code.

Untuk keamanan tambahan, Anda memiliki dua pilihan:

  • Enkripsi Akhir ke Akhir: Enkripsi bundle Anda sebelum mengunggahnya untuk melindunginya di penyimpanan dan transit serta mencegah pihak ketiga untuk menghasilkan pembaruan enkripsi yang valid tanpa kunci pribadi Anda. Hal ini tidak membuat aset web yang dikirimkan tidak dapat direversi karena kunci publik ada di aplikasi yang didistribusikan.
  • Upload URL Luar: Simpan bundle di server Anda sendiri dan hanya berikan Capgo dengan link download dengan opsi --external <url>

Lihat juga kebijakan privasi kami: https://capgo.app/privasi

Apakah file bundle adalah data pribadi?

Judul bagian “Apakah file bundle adalah data pribadi?”

Tidak. File bundle adalah aset web publik yang dimaksudkan untuk diunduh oleh pengguna aplikasi Anda. Siapa pun yang tahu URL bundle dapat mengambil file-file tersebut, dan Capgo memberitahu pengguna tentang hal ini selama pengaturan dan dalam dokumentasi.

Akses ke file bundle tidak dianggap sebagai pelanggaran data. Jangan masukkan rahasia, kreditensial, data pribadi, atau data yang diatur dalam bundle aplikasi Anda. Jika Anda memerlukan keamanan yang lebih kuat untuk kasus penggunaan keamanan tinggi, gunakan enkripsi akhir ke akhir, tetapi masih traktir aplikasi code dan asetnya sebagai publik dari perspektif pelaporan keamanan.

Apakah saya dapat menggunakan Capgo dari sistem CI saya?

Bagian berjudul “Apakah saya bisa menggunakan Capgo dari sistem CI saya?”

Ya. Capgo dimaksudkan untuk digunakan dari sistem CI. Kami telah menerbitkan panduan untuk Android dan Github Actions dan iOS, dan untuk GitLab. Sistem CI lainnya seharusnya sama.

Silakan tidak ragu-ragu untuk menghubungi kami atas masalah GitHub atau Discord jika Anda mengalami masalah.

Bagaimana ini terkait dengan Firebase Remote Config atau Launch Darkly?

Bagaimana ini terkait dengan Firebase Remote Config atau Launch Darkly?

Code push memungkinkan menambahkan code baru / mengganti code di perangkat. Firebase Remote Config dan Launch Darkly adalah sistem konfigurasi. Mereka memungkinkan Anda mengubah konfigurasi aplikasi tanpa harus mengirimkan versi baru. Mereka tidak dimaksudkan untuk menggantikan code.

Berapa besar jejak ketergantungan ini?

Bagaimana besar jejak ketergantungan ini?

Saya belum mengukur secara teratur, tetapi saya mengharapkan code push library akan menambahkan kurang dari satu megabyte ke Capacitor aplikasi. Kami tahu cara membuat ini lebih kecil ketika itu menjadi prioritas. Jika ukuran menjadi penghalang bagi Anda, silakan beritahu kami!

Apakah Capgo berfungsi pada Simulator iOS 18.4?

Bagaimana Capgo berfungsi pada Simulator iOS 18.4?

Tidak. Karena masalah upstream yang mempengaruhi Simulator iOS 18.4, Capgo tidak berjalan dengan stabil di sana. Silakan tes pada perangkat nyata atau gunakan versi Simulator iOS yang berbeda.

Lihat detail di masalah React Native: facebook/react-native#50510

Apakah code push berfungsi dengan aplikasi besar?

Bagian berjudul “Apakah code push berfungsi dengan aplikasi besar?”

Ya. Tidak ada batasan ukuran aplikasi yang dapat diperbarui dengan code push. Seperti yang telah disebutkan di bawah ini, Capgo dapat mengubah apapun JS code di aplikasi Anda, terlepas dari ukurannya.

Perlu diingat: Ukuran yang lebih besar akan membuat lebih sulit bagi pengguna untuk mengunduh pembaruan. Kami merekomendasikan menjaga aplikasi Anda sekecil mungkin.

Apa yang saya bisa gunakan Capgo code push untuk?

Bagian berjudul “Apa yang saya bisa gunakan Capgo code push untuk?”

Kami telah melihat berbagai penggunaan, termasuk:

  • Perbaikan darurat pada aplikasi produksi.
  • Menyampaikan perbaikan bug kepada pengguna pada versi aplikasi yang lebih tua.
  • Menyampaikan secara terus-menerus (misalnya setiap jam).

Perlu diingat bahwa sebagian besar toko aplikasi melarang menyampaikan code yang mengubah perilaku aplikasi dalam cara yang signifikan. Silakan lihat di bawah untuk informasi lebih lanjut.

Apa yang dihitung sebagai “MAU” untuk Capgo?

Bab yang berjudul “Apa yang dihitung sebagai ‘MAU’ untuk Capgo?”

MAU adalah pengguna aktif bulanan. Dalam konteks Capgo, ini sebenarnya merujuk pada perangkat aktif bulanan. Kami menghitung MAU sebagai perangkat yang telah menghubungi server kami dalam 30 hari terakhir. Kami tidak menghitung perangkat yang belum menghubungi server kami dalam 30 hari terakhir.

PentingMulai dari versi plugin v5.10.0, v6.25.0 dan v7.25.0, ID perangkat sekarang bertahan di setiap penginstalan ulang aplikasi. Sebelum versi-versi ini, setiap penginstalan ulang aplikasi akan menghasilkan ID perangkat baru dan dihitung sebagai pengguna baru MAU.

Dengan versi saat ini:

  • ID Perangkat bertahan di setiap penginstalan ulang (disimpan dengan aman di Keychain di iOS dan EncryptedSharedPreferences di Android)
  • Pengupdate aplikasi tidak akan menciptakan ID Perangkat baru
  • Selama pengembangan, jika Anda menggunakan versi plugin yang lebih lama (&#x3C; v5.10.0 / v6.25.0 / v7.25.0), setiap penginstalan ulang masih akan menciptakan pengguna baru MAU

Catatan: Pengunduhan TestFlight dan switch channel di Android mungkin masih akan menghasilkan pendaftaran perangkat baru tergantung pada pengaturan Anda.

Kami merekomendasikan setelah pengaturan pertama, untuk menonaktifkan perangkat pengembang dan emulator untuk mengurangi jumlah perangkat yang duplikat.

Apa yang tidak bisa kita gunakan Capgo code push untuk?

Apa yang tidak bisa kita gunakan untuk Capgo code push?

Seperti di atas, Capgo tidak boleh digunakan untuk melanggar kebijakan toko aplikasi. Silakan lihat di bawah untuk informasi lebih lanjut.

Juga Capgo tidak mendukung perubahan native code (misalnya Java/Kotlin pada Android atau Objective-C/Swift pada iOS). Alat akan memberi peringatan kepada Anda selama update yang dicoba jika Anda telah mengubah native code.

Apakah saya bisa memperbarui capacitor.config.ts perubahan melalui Capgo?

Judul bagian “Apakah saya bisa memperbarui capacitor.config.ts perubahan melalui Capgo?”

Tidak. Aturan singkat: Capgo dapat mengirim folder hasil build web yang dihasilkan, termasuk HTML, CSS, JavaScript, aset, dan perubahan paket JavaScript murni yang dibundel ke dalam output tersebut. Perubahan capacitor.config.tskonfigurasi plugin native, instalasi atau pengupgrade paket native, dan apa pun yang harus memperbarui proyek iOS atau Android melalui npx cap sync atau npx cap copy memerlukan rilis aplikasi native.

Konfigurasi file Capacitor dibaca pada waktu pembangunan native dan dikompilasi menjadi file biner aplikasi native. Jika Anda perlu mengubah konfigurasi Capacitor Anda, Anda harus:

  1. Update capacitor.config.ts secara lokal
  2. Rebuild aplikasi native Anda (npx cap sync diikuti oleh pembangunan native)
  3. Kirimkan file biner baru ke toko aplikasi

Apakah Capgo mengirimkan ke toko aplikasi untuk saya?

Bagian berjudul “Apakah Capgo mengirimkan ke toko aplikasi untuk saya?”

Capgo tidak mendukung saat ini mengirimkan ke toko aplikasi untuk Anda. Kami memiliki rencana untuk menambahkan fitur ini di masa depan, tetapi untuk saat ini Anda akan perlu terus menggunakan proses yang sudah ada untuk mengirimkan ke toko aplikasi.

Anda dapat menggunakan panduan kami untuk CI Android Panduan CI Android untuk mengautomasi proses ini dan Petunjuk CI iOS.

Apa yang disimpan oleh Capgo di disk dan di mana?

Bagian berjudul “Apa yang disimpan oleh Capgo di disk dan di mana?”

Pembaruan Capgo (termasuk dalam aplikasi Anda ketika Anda membangun aplikasi) menyimpan bundle terbaru yang diunduh di direktori tunggal yang hanya capacitor memungkinkan untuk memuat code. Pada perangkat Android, ini terletak di /data/user/0/com.example.app/code_cache/capgo_updater meskipun basis dari jalur tersebut disediakan oleh sistem Android dan dapat berubah secara dinamis pada waktu eksekusi. Pada perangkat iOS, data disimpan di Library/Application Support/capgo.

Alat perintah Capgo (misalnya npx @capgo/cli@latest bundle upload) terinstal di disk di npm cache, login Anda disimpan di direktori rumah Anda di ~/.capgo.

Bagaimana ini terkait dengan Capacitor Hot Reload?

Bagian berjudul “Bagaimana ini terkait dengan Capacitor Hot Reload?”

Capacitor’s Hot reload adalah fitur waktu pengembangan saja. Code push adalah untuk produksi.

Hot reload adalah fitur dari Capacitor yang memungkinkan Anda untuk mengubah code pada perangkat selama pengembangan. Fitur ini memerlukan pembangunan aplikasi Capacitor dengan proxy untuk terhubung ke mesin lokal.

Code push adalah fitur yang memungkinkan Anda untuk mengubah code pada perangkat di produksi. Kami akan menggunakan berbagai teknik untuk membuat hal ini mungkin tergantung pada platform.

Apa jenis perubahan yang didukung oleh Capgo code push?

Bagian berjudul “Apa jenis perubahan yang didukung oleh Capgo code push?”

Capgo dapat mengubah semua JS code di aplikasi Anda. Ini termasuk code aplikasi dan code yang dihasilkan. Anda juga dapat memperbarui dependensi di package.json sepanjang mereka tidak memerlukan perubahan code native.

Kami tidak memiliki rencana untuk mendukung perubahan code native (misalnya Java/Kotlin pada Android atau Objective-C/Swift pada iOS), dan alat akan memberi peringatan jika deteksi bahwa Anda telah mengubah code native karena tidak akan termasuk dalam bundle.

Code push tidak diperlukan untuk web karena web sudah berjalan dengan cara ini. Ketika pengguna membuka aplikasi web, maka aplikasi tersebut akan mengunduh versi terbaru dari server jika diperlukan.

Jika Anda memiliki kasus penggunaan code push dengan web, kami sangat ingin mengetahuinya!

Apakah ini akan berfungsi pada iOS, Android, Mac, Windows, Linux, dll?

Judul bagian “Apakah ini akan berfungsi pada iOS, Android, Mac, Windows, Linux, dll?”

Ya.

Saat ini kami telah fokus pada dukungan Android, iOS, dan Electron, dan code push sudah siap digunakan di semua tiga platform.

Versi sistem operasi apa yang didukung oleh Capgo?

Judul bagian “Versi sistem operasi apa yang didukung oleh Capgo?”

Capgo mendukung versi Android yang sama dengan Capacitor mendukung.

Capacitor saat ini mendukung Android API level 22+ dan iOS 13.0+: https://capacitorjs.com/docs/main/reference/support-policy

Capgo saat ini hanya mendukung rilis stabil terbaru dari Capacitor. Kami juga bisa mendukung versi lama dari Capacitor, kami hanya belum membangun infrastruktur yang diperlukan untuk menjaga hal tersebut dalam waktu lama. Kami berencana untuk mendukung lebih banyak versi dari Capacitor di masa depan, termasuk versi untuk pelanggan bisnis kami. https://github.com/Cap-go/capgo/issues/1100

Capgo mengikuti rilis stabil Capacitor dan secara umum melakukan update dalam beberapa jam setelah rilis stabil. Sistem kami untuk melakukan update ini adalah otomatis dan membutuhkan beberapa menit untuk dijalankan. Kami kemudian melakukan langkah verifikasi tambahan sebelum mempublikasikan ke server kami.

Apa hubungannya dengan proses atau kebijakan review App/Play Store?

Bab yang berjudul “Apa hubungannya dengan proses atau kebijakan review App/Play Store?”

Pengembang terikat dengan perjanjian mereka dengan penyedia toko ketika mereka memilih untuk menggunakan toko tersebut. Code push dirancang untuk memungkinkan pengembang untuk memperbarui aplikasi mereka dan masih mematuhi kebijakan toko pada saluran pengiriman iOS, Android, dan Electron. Seperti berbagai produk komersial yang tersedia untuk melakukan hal yang sama dengan React Native (misalnya Microsoft, Indonesia).

Microsoft juga menerbitkan panduan tentang bagaimana solusi mereka memenuhi pedoman toko aplikasi: https://github.com/microsoft/react-native-code-push#store-guideline-compliance

Code push adalah teknik yang luas digunakan di seluruh toko aplikasi. Semua aplikasi besar yang saya ketahui menggunakan code push. Kebijakan utama yang perlu diwaspadai adalah tidak mengubah perilaku aplikasi dalam cara yang signifikan. Silakan lihat di bawah untuk informasi lebih lanjut.

Apakah Capgo memenuhi pedoman Play Store?

Judul bagian “Apakah Capgo memenuhi pedoman Play Store?”

Ya.

Toko Play menawarkan dua pembatasan terkait dengan alat pembaruan.

  1. Pembaruan harus menggunakan interpreter atau mesin virtual (Capgo menggunakan JavaScript di WebView). https://support.google.com/googleplay/android-developer/answer/9888379?hl=en
An app distributed via Google Play may not modify, replace, or update itself
using any method other than Google Play's update mechanism. Likewise, an app
may not download executable code (such as dex, JAR, .so files) from a
source other than Google Play. *This restriction does not apply to code
that runs in a virtual machine or an interpreter* where either provides
indirect access to Android APIs (such as JavaScript in a webview or
browser).
Apps or third-party code, like SDKs, with interpreted languages (JavaScript,
Python, Lua, etc.) loaded at run time (for example, not packaged with the
app) must not allow potential violations of Google Play policies.
  1. Perubahan aplikasi tidak boleh menipu (misalnya, mengubah tujuan aplikasi melalui update). https://support.google.com/googleplay/android-developer/answer/9888077 Mohon jelas dengan pengguna Anda tentang apa yang Anda berikan dengan aplikasi Anda dan jangan melanggar harapan mereka dengan perubahan perilaku signifikan melalui penggunaan Capgo.

Capgo dirancang untuk kompatibel dengan pedoman Play Store. Namun Capgo adalah alat, dan seperti dengan alat lainnya, dapat disalahgunakan. Sengaja disalahgunakan Capgo untuk melanggar pedoman Play Store adalah pelanggaran terhadap Capgo Syarat dan Ketentuan dan dapat menyebabkan pembubaran akun Anda.

Akhirnya, code layanan push sangat umum digunakan di industri (semua aplikasi besar yang saya ketahui menggunakan mereka) dan ada beberapa layanan push lainnya code yang tersedia secara publik (misalnya expo.dev &#x26; appcenter.ms). Ini adalah jalur yang sudah sering dilalui.

Microsoft juga menerbitkan panduan tentang cara library kodepush mereka yang berbasis react native memenuhi pedoman toko aplikasi: https://github.com/microsoft/react-native-code-push#store-guideline-compliance

Apakah Capgo memenuhi pedoman App Store?

Judul bagian “Apakah Capgo memenuhi pedoman App Store?”

Iya.

Seperti Play Store, App Store menawarkan keterbatasan teknis dan kebijakan.

3.2.2
... interpreted code may be downloaded to an Application but only so long as
such code:
(a) does not change the primary purpose of the Application by providing
features or functionality that are inconsistent with the intended and
advertised purpose of the Application as submitted to the App Store,
(b) does not create a store or storefront for other code or applications, and
(c) does not bypass signing, sandbox, or other security features of the OS.

Capgo menggunakan JavaScript dalam WebView untuk memenuhi keterbatasan interpreter-only untuk pembaruan di iOS. Selama aplikasi Anda tidak melakukan perilaku penipuan melalui pembaruan (misalnya, mengubah tujuan aplikasi melalui pembaruan), pembaruan melalui Capgo (atau solusi push code lainnya) adalah praktik industri standar dan memenuhi pedoman App Store.

Menggunakan Capgo dengan sengaja untuk melanggar pedoman App Store adalah pelanggaran terhadap Capgo Syarat dan Ketentuan dan dapat menyebabkan pembatalan akun Anda.

Microsoft juga menerbitkan panduan tentang bagaimana library kodepush mereka yang berbasis React Native memenuhi toko aplikasi: https://github.com/microsoft/react-native-code-push#store-guideline-compliance

Apakah saya dapat menggunakan Capgo di negara saya?

Bab yang berjudul “Apakah saya bisa menggunakan Capgo di negara saya?”

Kami belum mencoba untuk membatasi akses ke Capgo dari negara mana pun.

Kami menyadari bahwa beberapa negara memiliki pembatasan pada apa saja yang dapat diakses dari dalam negara. Capgo saat ini menggunakan Cloudflare Cloud untuk hosting, termasuk R2 Storage dan pekerja Cloudflare.

URL-URL berikut digunakan oleh Capgo:

  • https://api.capgo.app — digunakan oleh alat perintah garis perintah untuk berinteraksi dengan server __CAPGO_KEEP_0__ serta pembarui __CAPGO_KEEP_1__ pada perangkat pengguna untuk memeriksa pembaruan. npx @capgo/cli command line tools to interact with the Capgo servers as well as the Capgo updater on users’ devices to check for updates.
  • — digunakan oleh alat perintah garis perintah untuk mengunggah dan mengunduh bundle Jika semua URL-URL tersebut dapat diakses dari negara Anda, maka __CAPGO_KEEP_0__ seharusnya berfungsi. npx @capgo/cli — digunakan oleh alat perintah garis perintah untuk mengunggah dan mengunduh bundle

Jika semua URL-URL tersebut dapat diakses dari negara Anda, maka Capgo seharusnya berfungsi.

Jika wilayah Anda memerlukan blokir akses ke salah satu URL tersebut, silakan beritahu kami dan kami dapat bekerja sama dengan Anda untuk menemukan solusi. Server proxy adalah salah satu pilihan.

Ya, Anda dapat meng-host sendiri Capgo. Panduan belum ditulis, tetapi code tersedia secara terbuka dan dapat diakses di https://github.com/cap-go/capgo

Apakah code push memerlukan koneksi internet untuk berfungsi?

Bagian berjudul “Apakah code push memerlukan koneksi internet untuk berfungsi?”

Ya. Salah satu kemungkinan adalah menjalankan server untuk mendistribusikan pembaruan secara terpisah dari internet umum, tetapi beberapa bentuk koneksi jaringan diperlukan untuk mengangkut pembaruan ke perangkat.

Bagaimana Capgo dipengaruhi oleh kekurangan koneksi jaringan?

Bagaimana Capgo terpengaruh oleh kekurangan koneksi jaringan?

Capgo updater (termasuk dalam aplikasi Anda ketika Anda membangun aplikasi dengan Capgo) dirancang untuk tahan terhadap masalah koneksi jaringan.

Dalam perilaku pembaruan default, ketika aplikasi diluncurkan, aplikasi mengingatkan Capgo updater, yang memulai thread terpisah untuk membuat permintaan jaringan ke server Capgo dan meminta pembaruan. Kami sengaja menggunakan thread terpisah untuk menghindari mempengaruhi hal lain yang aplikasi mungkin sedang melakukan. Jika permintaan jaringan gagal atau waktu habis, pembaruan akan mencoba memeriksa lagi ketika aplikasi diluncurkan lagi.

Capgo command line tools (misalnya npx @capgo/cli@latest bundle upload) memerlukan koneksi jaringan untuk berfungsi. Jika Anda menggunakan Capgo untuk mendistribusikan aplikasi, pastikan sistem CI Anda memiliki koneksi jaringan.

Apa yang terjadi jika pengguna tidak memperbarui selama waktu lama dan melewatkan pembaruan?

Bagian berjudul “Apa yang terjadi jika pengguna tidak memperbarui selama waktu lama dan melewatkan pembaruan?”

Implementasi kami selalu mengirimkan pembaruan yang disesuaikan secara spesifik untuk perangkat yang meminta pembaruan, sehingga memperbarui permintaan selalu ke versi terbaru yang tersedia. Oleh karena itu, jika pengguna tidak memperbarui selama waktu lama, mereka akan “melewatkan” pembaruan intermediate.

Pelayan pembaruan dapat diubah untuk mendukung respons dengan versi incremental berikutnya atau versi terbaru tergantung pada kebutuhan aplikasi Anda. Tolong beritahu kami jika perilaku pembaruan alternatif penting bagi Anda.

Capgo adalah plugin untuk Capacitor yang menambahkan code push. Capgo bukanlah pengganti untuk Capacitor. Anda dapat terus menggunakan alat Capacitor yang sudah Anda kenal dan cintai.

Kami mengikuti rilis stabil terbaru dari Capacitor dan memperbarui plugin push code untuk berjalan dengan rilis tersebut.

Dengan default, pembaruan Capgo memeriksa pembaruan pada saat aplikasi dijalankan. Pembaruan berjalan di thread latar belakang dan tidak mengganggu thread UI. Pembaruan akan diinstal saat pengguna menggunakan aplikasi dan akan diterapkan pada saat aplikasi dijalankan kembali.

It is also possible to run the Capgo updater manually using the @capgo/capacitor-updater package, melalui mana pembaruan dapat diaktifkan kapan saja, termasuk melalui notifikasi push.

The Capgo pembaruan adalah dirancang sedemikian rupa sehingga ketika jaringan tidak tersedia, atau server tidak beroperasi atau tidak dapat dijangkau, aplikasi akan terus berjalan seperti biasa. Jika Anda pernah memilih untuk menghapus pembaruan dari server kami, semua klien Anda akan terus berjalan seperti biasa.

Kami telah menambahkan kemampuan untuk mengembalikan patch. Hal yang paling sederhana adalah dengan menempelkan bundle sebelumnya ke saluran Anda untuk menghapus.

Tidak. app_id termasuk dalam aplikasi Anda dan aman untuk diungkapkan secara publik. Anda dapat memeriksaannya ke dalam pengontrol versi (bahkan secara publik) dan tidak perlu khawatir tentang orang lain mengaksesnya.

Seseorang yang memiliki app_id dapat mengambil versi terbaru aplikasi Anda dari server Capgo, tetapi mereka tidak dapat mengirimkan pembaruan ke aplikasi Anda atau mengakses aspek lain dari akun Capgo Anda.

Meskipun Capgo terhubung ke jaringan, tidak mengirimkan informasi identitas pribadi apa pun. Termasuk Capgo tidak akan mempengaruhi deklarasi Anda untuk Toko Play atau App Store.

Pengajuan yang dikirimkan dari aplikasi ke server Capgo termasuk:

  • app_id (ditentukan capacitor.config.json)
  • channel (opsional dalam capacitor.config.json)
  • release_version (versiName dari AndroidManifest.xml atau CFBundleShortVersionString dari Info.plist atau capacitor.config.json jika diatur dalam CapacitorUpdater.version )
  • version_number (dibuat sebagai bagian dari npx @capgo/cli@latest bundle upload)
  • os_version (misalnya ‘11.2.1’)
  • platform (misalnya ‘android’, diperlukan untuk mengirimkan patch yang tepat) Itu saja. code untuk hal ini ada di updater/library/src/network.rs
  • device_id (dibuat pada perangkat pada pertama kali dijalankan, digunakan untuk menghilangkan duplikat perangkat instalasi dan memungkinkan kami untuk mengenakan biaya berdasarkan pengguna yang terinstal ke (misalnya pengguna aktif bulanan), bukan total patch atau total instalasi patch)
  • custom_id (opsional, diatur pada runtime oleh pengembang, digunakan untuk Anda untuk menghubungkan perangkat ke pengguna di sistem Anda)

Apakah saya dapat menggunakan Capgo untuk aplikasi yang sensitif HIPAA?

Judul bagian “Apakah saya bisa menggunakan Capgo untuk aplikasi yang sensitif terhadap HIPAA?”

Ya, tetapi pemilik kepatuhan perlu memilih model penggunaan yang tepat. Capgo Cloud tidak saat ini ditampilkan sebagai pengolah statistik yang kompatibel dengan HIPAA. Secara default, data pembaruan adalah terbatas pada perangkat dan tidak terkait dengan pengguna aplikasi yang diketahui, dan banyak tim menggunakan model tersebut dengan sukses.

Untuk tinjauan yang lebih ketat, Anda dapat meng-lokasikan lalu lintas plugin secara geografis, mematikan statistik dengan mengatur statsUrl ke string kosong, hanya-host statistik endpoint, atau menggunakan hosting yang lisensi. Jangan panggil CapacitorUpdater.setCustomId(...) dengan alamat email, ID pengguna, ID pasien, ID karyawan, atau nilai apa pun yang memetakan telemetri pembaruan kembali ke orang.

Lihat Kebijakan HIPAA untuk setup teknis yang lengkap dan perdagangan observabilitas ketika statistik diaktifkan.

Apakah saya bisa mempertahankan Capgo data pembaruan hidup di Eropa?

Judul bagian “Apakah saya bisa mempertahankan Capgo data pembaruan hidup di Eropa?”

Ya. Aplikasi yang memerlukan residensi data Eropa untuk Capgo plugin Cloud dapat menetapkan endpoint pembaruan ke host Eropa:

  • updateUrl: https://plugin.eu.capgo.app/updates
  • statsUrl: https://plugin.eu.capgo.app/stats
  • channelUrl: https://plugin.eu.capgo.app/channel_self

Gunakan semua tiga URL Eropa bersama-sama sehingga periksa pembaruan, statistik, dan penugasan saluran menggunakan jalur data regional yang sama. Karena nilai-nilai ini hidup di capacitor.config.ts, aplikasi mobile produksi memerlukan rilis native sebelum instalasi yang ada menggunakan endpoint baru.

Lihat Lokasi Data untuk contoh Capacitor dan Electron yang tepat.

Saat ini, Capgo mendukung Android, iOS, dan Electron. Semua sudah siap produksi.

Penggunaan Capgo untuk iOS, Android, atau Electron dapat menjadi keputusan independen. Anda dapat menetapkan strategi saluran untuk Android dan sebuah ipa yang dibangun ke App Store, atau saluran Electron, sesuai kebutuhan.

Capgo dapat (relatif mudah) dibuat untuk mendukung target desktop atau embedded. Jika itu penting bagi Anda, silakan beritahu kami.

How cara Capgo berinteraksi dengan Play Testing Tracks atau Apple TestFlight?

Bagian berjudul “Cara Capgo berinteraksi dengan Play Testing Tracks atau Apple TestFlight?”

Masing-masing toko aplikasi memiliki mekanisme yang berbeda untuk mendistribusikan aplikasi ke kelompok pengguna yang terbatas (misalnya “pengujian internal”, “beta tertutup”, dll.). Semua mekanisme ini adalah untuk membagi pengguna Anda ke dalam kelompok-kelompok dan mendistribusikan versi aplikasi tertentu ke setiap kelompok.

Sayangnya, tidak semua mekanisme ini memungkinkan pihak ketiga untuk mendeteksi ketika aplikasi diinstal dalam Test Track tertentu atau melalui TestFlight. Oleh karena itu, kami tidak memiliki visibilitas yang dapat diandalkan ke komposisi kelompok-kelompok ini, dan tidak dapat memastikan akses ke patch Capgo berdasarkan kelompok-kelompok ini. https://stackoverflow.com/questions/53291007/can-an-android-application-identify-the-test-track-within-google-play https://stackoverflow.com/questions/26081543/how-to-tell-at-runtime-whether-an-ios-app-is-running-through-a-testflight-beta-i

Jika Anda ingin membagi ketersediaan paket Capgo, ada 4 opsi potensial:

  1. Gunakan saluran terpisah untuk setiap kelompok. Pendekatan ini paling sederhana, tetapi memerlukan Anda untuk mengelola saluran yang banyak. Anda mungkin sudah memiliki saluran dev dan saluran prod dengan ketersediaan yang berbeda. Anda dapat memperbarui saluran dev Anda, memverifikasi dan kemudian memperbarui saluran prod Anda secara terpisah. Kami merekomendasikan menggunakan cabang / tag di kontrol versi Anda untuk membantu Anda mengikuti sumber yang terkait dengan setiap rilis.
  2. Ikuti setiap pengguna yang memilih untuk berpartisipasi, nonaktifkan pembaruan otomatis, dan aktifkan pembaruan hanya untuk pengguna tertentu melalui @capgo/capacitor-updater package. Pendekatan ini berfungsi saat ini, tetapi memerlukan Anda untuk mengelola daftar pengguna yang memilih sendiri.
  3. Capgo memungkinkan Anda membuat mekanisme opt-in sendiri pada dasar perangkat (mirip dengan Test Tracks atau TestFlight, tetapi agnostik platform). Ini memungkinkan tim QA Anda untuk memilih untuk mengikuti paket sebelum mereka dipromosikan ke publik umum.
  4. Capgo memungkinkan Anda melakukan roll-out berdasarkan persentase. Pendekatan ini tidak memungkinkan Anda memilih perangkat mana yang akan dikirim, tetapi dapat membantu Anda melakukan roll-out secara bertahap dan membatalkan jika ada masalah.

Bagaimana cara saya mengupgrade atau menurunkan tingkat rencana saya?

Bagian berjudul “Bagaimana cara saya mengupgrade atau menurunkan tingkat rencana saya?”

Anda dapat mengupgrade atau menurunkan tingkat rencana Anda kapan saja di dashboard Anda: https://console.capgo.app/pengaturan/organisasi/tarif

Periode tagihan akan direset secara otomatis setiap bulan pada bulan Anda pertama kali berlangganan ke Capgo. Misalnya, jika Anda berlangganan pada tanggal 15 bulan ini, periode tagihan Anda akan direset pada tanggal 15 setiap bulan.

Bagaimana cara saya menghapus langganan saya?

Bagian berjudul “Bagaimana cara saya menghapus langganan saya?”

Anda dapat menghapus langganan Anda kapan saja di dashboard Anda: https://console.capgo.app/pengaturan/organisasi/tarif

Apakah saya bisa membayar untuk satu tahun maju?

Apakah saya bisa membayar untuk satu tahun di muka?

Ya, Anda bisa melakukannya kapan saja di dashboard Anda: https://console.capgo.app/settings/organization/plans

Statistik di dashboard Anda diperbarui setiap pukul 00.00 UTC. Statistik dihitung berdasarkan jumlah MAU jumlah perangkat yang telah terinstal di perangkat Anda.

Bagaimana ID perangkat dihasilkan

Bagaimana ID perangkat dihasilkan

ID perangkat dihasilkan pada perangkat pada pertama kali dijalankan, dan digunakan untuk menghilangkan duplikat instalasi perangkat dan memungkinkan kami untuk mengenakan biaya berdasarkan pengguna yang terinstal ke (misalnya pengguna aktif bulanan), bukan total patch atau total instalasi patch.

MAU adalah solusi yang lebih baik daripada jumlah instalasi untuk menentukan Capgo, karena lebih akurat dan mencerminkan biaya sebenarnya Capgo per perangkat.

Penyimpanan ID Perangkat (Diperbarui pada v6.25.0 dan v7.25.0):

  • Sikap saat ini: ID perangkat sekarang bertahan di antara penginstalan aplikasi ulang. ID perangkat disimpan dengan aman di Keychain perangkat (iOS) atau EncryptedSharedPreferences (Android), memungkinkan kami untuk mengikuti perangkat yang sama bahkan setelah uninstall/reinstall.
  • Sikap sebelumnya (sebelum v6.25.0/v7.25.0): Untuk alasan privasi terkait kebijakan toko Apple dan Google, ID perangkat direset pada setiap penginstalan aplikasi ulang, sehingga tidak memungkinkan kami untuk mengikuti perangkat yang sama di antara penginstalan ulang.

Aturan privasi ditegakkan oleh Apple dan Google, dan Capgo’s implementasi mematuhi praktik terbaik mereka untuk identifikasi perangkat.

ID perangkat terdaftar setelah aplikasi memeriksa Capgo melalui endpoint pembaruan atau statistik. Perangkat tidak perlu menginstal patch sebelum dapat muncul di daftar perangkat.

Mengapa nomor perangkat saya berbeda dengan MAU saya?

Bagian berjudul “Mengapa nomor perangkat saya berbeda dengan MAU saya?”

Daftar perangkat dan MAU berdasarkan sinyal yang berbeda.

Daftar perangkat menampilkan metadata terbaru yang diketahui untuk setiap perangkat, seperti ID perangkat, platform, versi plugin, versi OS, versi native, saluran, dan paket yang diinstal. Capgo memperbarui metadata ini ketika aplikasi memeriksa, tetapi periksa ulang yang melaporkan metadata yang sama mungkin tidak mengubah baris atau waktu pembaruan terakhirnya.

MAU menghitung perangkat aktif unik selama jendela pembayaran. Aktivitas tersebut dapat meningkat bahkan ketika metadata perangkat tetap sama, sehingga perhitungan perangkat dan MAU dapat berbeda.

Bagaimana memiliki pembaruan yang berbeda berdasarkan platform?

Bagian berjudul “Bagaimana memiliki pembaruan yang berbeda berdasarkan platform?”

Anda dapat membuat saluran untuk setiap platform dan mengaktifkan pembaruan spesifik platform di setiap saluran.

Pada saluran ios, nonaktifkan pembaruan android dan pada saluran android, nonaktifkan pembaruan ios.

Lalu unggah paket ke setiap saluran untuk memiliki pembaruan yang berbeda untuk setiap platform.

Jika Anda perlu memiliki pembaruan yang sama untuk kedua platform, Anda dapat menghubungkan satu paket ke beberapa saluran. Tidak perlu menggandakan paket.

Jika Anda menggunakan FAQ untuk merencanakan pengiriman update live, hubungkannya dengan Capgo Live Updates untuk alur kerja produk di Capgo Live Updates, Ringkasan untuk detail implementasi di Ringkasan, Fitur untuk detail implementasi di Fitur, Perilaku Update untuk detail implementasi di Perilaku Update, dan Tipe Perbarui untuk detail implementasi di Tipe Perbarui.