Tim yang merilis Capacitor live updates yang lebih cepat terus menanyakan hal yang sama setelah email review Apple menyebutkan eksekusi code secara remote: apakah itu memblokir Capgo?
Untuk sebagian besar aplikasi Capacitor, tidak. Capgo menggantikan web bundle yang sudah dijalankan aplikasi Anda. Ini tidak mengunduh Swift, framework, atau bytecode, dan tidak mengubah produk Anda menjadi mini app store. Aturan yang dikutip Apple memang nyata, tetapi menyasar kelas perilaku yang berbeda dari JavaScript yang ditandatangani yang dikirim ke WKWebView atau JavaScriptCore.
Ini adalah panduan teknis, bukan saran hukum. Baca teks resmi Apple dan libatkan penasihat hukum untuk aplikasi Anda.
Tiga teks yang dikutip reviewer
Pedoman App Review 2.5.2
Pedoman 2.5.2 menyatakan aplikasi tidak boleh “mengunduh, menginstal, atau mengeksekusi code yang memperkenalkan atau mengubah fitur atau fungsionalitas aplikasi, termasuk aplikasi lain.”
Tim reviewer memakai kalimat itu saat melihat:
dlopen,dlsym, atau pemuatan dinamis serupa,performSelector:dan hook runtime lain yang mengarah ke private API, atau- skrip remote yang berfungsi mengubah perilaku native setelah disetujui.
Itulah eksekusi code secara remote pola dalam surat penolakan. Ini bukan larangan untuk setiap byte yang diunduh setelah instalasi.
Bagian ADPLA 3.3.1(B) (interpretasi code)
Panduan Perjanjian Lisensi Apple Developer Program bagian 3.3.1(B) mengizinkan code yang diinterpretasikan untuk diunduh jika:
- tidak mengubah tujuan utama aplikasi,
- tidak melewati signing, sandbox, atau fitur keamanan OS lainnya, dan
- tidak membuat store atau storefront untuk aplikasi lain.
Lapisan web Capacitor dirancang untuk diinterpretasikan oleh code. Capgo mengganti lapisan tersebut setelah pengguna menginstal binary yang telah ditinjau dari App Store.
Bagian ADPLA 3.3.1(C) (fitur tambahan)
Bagian 3.3.1(C) menambah batasan lain: tanpa persetujuan tertulis sebelumnya dari Apple atau 3.3.9(A) penggunaan In-App Purchase, aplikasi tidak boleh menyediakan, membuka, atau mengaktifkan fitur atau fungsionalitas tambahan melalui mekanisme distribusi selain App Store, Custom App Distribution, atau TestFlight.
Apakah bundle OTA tertentu melanggar aturan tersebut adalah keputusan hukum tim Anda. Capgo tidak menentukannya untuk Anda. checklist kepatuhan menyebutkan 3.3.1(C) agar Anda bisa mengevaluasi setiap rilis.
Guideline 4.7 dan klarifikasi November 2025
Pembaruan guideline Apple pada 13 November 2025 mengklarifikasi Pedoman 4.7 untuk aplikasi yang menawarkan HTML5 dan JavaScript mini apps, mini games, chatbot, plug-in, dan software serupa yang tidak tertanam dalam binary.
Jika pengguna menjelajahi atau menjalankan banyak pengalaman software berbeda di dalam aplikasi Anda, Anda mungkin butuh mekanisme katalog, indexing, dan rating usia dari 4.7. Kepemilikan bundle bukan penentunya. pengalaman yang Anda rilis lakukan.
Capgo adalah channel pengiriman untuk URL bundle pada URL channel. Ini bukan sebuah marketplace. Jika produk Anda adalah white-label host atau platform mini app, pertimbangkan hal ini dengan serius sebelum mengandalkan OTA.
Apa yang sebenarnya dirilis Capgo
| Lapisan | perilaku Capgo |
|---|---|
| Binary Native | Tidak berubah. Plugin, permission, dan entitlement baru memerlukan store build. |
| Aset web | JavaScript, HTML, CSS, font, gambar, dan file statis yang sudah ditandatangani akan menggantikan in-app bundle. |
| Eksekusi | Berjalan di dalam WebView atau engine JavaScriptCore yang sudah disetujui Apple bersama shell Anda. |
| Enkripsi | Enkripsi end-to-end opsional menjaga isi bundle tetap tidak terbaca oleh Capgo saat transit maupun penyimpanan. |
Capgo membantu Anda merilis perbaikan web-layer dalam hitungan menit, melakukan rollback bundle yang bermasalah pada sebuah channel, dan menjaga rilis native tetap sesuai jalur App Store. Ribuan aplikasi produksi menggunakan pemisahan ini tanpa mengubah live updates menjadi remote native loader.
Aturan praktis untuk tim Anda
- Gunakan OTA untuk bug, UI, copy, dan peningkatan di dalam produk yang telah ditinjau Apple.
- Kirim binary baru saat ada perubahan pada native code, SDK, permission, atau entitlement.
- Jangan gunakan live updates untuk mengubah model harga, membuka fitur tersembunyi, atau mengubah tujuan utama aplikasi.
- Dokumentasikan cara kerja update di catatan App Review jika diminta.
- Baca bagian lengkap Apple remote code dan Capgo sebelum rilis berikutnya.
Untuk melihat tampilan produk (channels, rollback, signing), mulai dari Capacitor live updates yang lebih cepat. Jika ingin mempelajari kebijakan secara mendalam, gunakan dokumen kepatuhan di atas atau panduan lama di Apakah Apple mengizinkan live updates?.