Aplikasi selesai dibuat belum berarti bisa langsung diunduh pengguna. Aplikasi harus lolos dulu di dua toko yang masing-masing punya aturan akun, signing, formulir privasi, dan proses review sendiri. Tim yang baru mengurus ini di minggu terakhir biasanya kehilangan dua sampai tiga minggu, sering karena hal yang tidak ada hubungannya dengan kode: kebijakan privasi belum ada, reviewer tidak bisa login, atau akun Google Play baru belum menyelesaikan masa testing wajib. Panduan ini membahas kedua toko sesuai urutan pekerjaannya di lapangan.
Tentukan Siapa Pemilik Akun Developer
Daftarkan akun atas nama perusahaan pemilik aplikasi, jangan atas nama freelancer atau vendor. Pemilik akun yang memegang listing, signing key di Google Play, pembayaran, dan semua update ke depannya. Memindahkan aplikasi ke akun lain di kemudian hari bisa dilakukan, tapi prosesnya lama. Akun perusahaan di kedua toko butuh nomor D-U-N-S. Nomor ini gratis, tapi bisa makan waktu beberapa hari sampai dua minggu, jadi ajukan sejak awal proyek. Tambahkan developer sebagai user dengan hak akses terbatas, jangan berbagi login pemilik akun.
| Google Play | App Store | |
|---|---|---|
| Biaya akun | Biaya pendaftaran sekali bayar 25 dolar AS | Apple Developer Program 99 dolar AS per tahun |
| Verifikasi perusahaan | Nomor D-U-N-S dan verifikasi identitas untuk akun organisasi | Nomor D-U-N-S dan pengecekan badan hukum untuk akun organisasi |
| Alat build | Sistem operasi apa saja, Android Studio atau Flutter CLI | Mac dengan Xcode, atau layanan CI cloud yang punya runner macOS |
| Format upload | Android App Bundle (.aab) | Archive yang diunggah dari Xcode atau Transporter |
| Testing sebelum rilis | Jalur internal, closed, dan open testing | TestFlight untuk tester internal dan eksternal |
Siapkan Signing Key dan Nomor Versi
Di Android, daftarkan aplikasi ke Play App Signing. Google menyimpan key yang menandatangani aplikasi untuk pengguna, dan tim Anda memegang upload key. Kalau upload key hilang, pemilik akun bisa meminta Google meresetnya. Tanpa Play App Signing, key yang hilang berarti aplikasi tidak akan pernah bisa di-update lagi. Simpan file keystore dan password-nya di password manager atau secret CI, jangan di repository.
Di iOS, untuk tim kecil biarkan Xcode yang mengatur certificate dan provisioning profile. Kalau yang merilis build ada beberapa orang, simpan semuanya di sistem CI. Kedua toko menolak build yang version code atau build number-nya tidak lebih tinggi dari upload terakhir, termasuk build yang hanya dikirim ke tester. Di Flutter keduanya diambil dari baris version di pubspec.yaml, misalnya 1.4.0+27. Naikkan angka setelah tanda plus setiap kali upload.
Isi Listing dan Formulir Privasi
- Kebijakan privasi di URL publik yang isinya sesuai dengan data yang memang dikumpulkan aplikasi. Kedua toko mewajibkannya, dan pengguna di Indonesia juga dilindungi UU Pelindungan Data Pribadi (UU PDP).
- Formulir Data safety di Google Play dan App Privacy di App Store Connect. Masukkan juga data yang dikumpulkan SDK seperti analytics, crash reporting, dan iklan.
- Screenshot untuk ukuran layar yang diminta, ikon aplikasi, deskripsi singkat, dan deskripsi lengkap yang enak dibaca pengguna. Jangan dijejali kata kunci.
- Kuesioner rating konten di Google Play dan rating usia di App Store.
- Akun demo berisi data contoh kalau aplikasi butuh login. Reviewer yang tertahan di halaman login akan menolak build Anda.
- Fitur hapus akun di dalam aplikasi kalau pengguna bisa membuat akun di aplikasi itu. Sekarang kedua toko memintanya.
Google Play: Rencanakan Closed Testing Sejak Awal
Akun developer pribadi yang dibuat setelah November 2023 tidak bisa langsung rilis ke production. Aplikasi harus menjalani closed test dengan minimal 12 tester yang tetap ikut selama 14 hari berturut-turut, baru setelah itu Anda bisa mengajukan akses production. Akun organisasi tidak terkena aturan ini, jadi ini satu alasan lagi untuk mendaftar atas nama perusahaan. Kalau terpaksa memakai akun pribadi, cari tester dari awal dan minta mereka tidak menghapus aplikasinya, karena hitungan 14 hari bisa mulai lagi dari nol kalau jumlah tester turun di bawah batas.
Google Play juga menaikkan batas minimum target API level setiap tahun, biasanya dengan tenggat bulan Agustus untuk aplikasi baru dan update. Aplikasi yang target API-nya sudah lama tidak bisa di-update sampai di-build ulang dengan versi yang lebih baru. Cek aturan ini sebelum menyusun jadwal rilis.
App Store: Pakai TestFlight dan Siap Ditanya Reviewer
Upload build ke TestFlight lebih dulu. Tester internal di tim Anda bisa memasangnya dalam hitungan menit. Tester eksternal, sampai 10.000 orang, baru bisa memasang setelah build pertama lolos beta review singkat. Review App Store untuk rilis biasanya selesai dalam satu sampai dua hari, tapi setiap penolakan menambah satu putaran lagi. Sisakan waktu di jadwal untuk minimal satu kali penolakan.
- Aplikasi crash atau ada fitur yang tidak jalan di perangkat reviewer. Tes di iPhone fisik dengan iOS versi terbaru.
- Aplikasi yang isinya hanya website di dalam web view, yang melanggar aturan minimum functionality.
- Menjual konten digital atau langganan dengan metode selain in-app purchase. Barang fisik dan jasa yang dinikmati di luar aplikasi boleh memakai payment gateway biasa.
- Tidak ada penjelasan izin akses. Setiap permintaan akses kamera, lokasi, atau kontak harus punya kalimat tujuan yang jelas.
- Metadata yang menyebut platform lain, teks placeholder, atau screenshot yang tidak sesuai dengan aplikasinya.
Langkah Membuat Build Rilis
- 1Matikan debug logging, lalu arahkan aplikasi ke API production dan key production untuk peta, push notification, dan pembayaran.
- 2Buat file rilis, misalnya flutter build appbundle untuk Android dan flutter build ipa untuk iOS, atau varian release di Android Studio dan archive di Xcode.
- 3Upload ke jalur internal testing dan TestFlight, lalu pasang dari toko di perangkat fisik, termasuk HP Android kelas bawah.
- 4Cek pendaftaran, login, pembayaran, push notification, dan deep link di build dari toko. Build debug sering menutupi masalah signing dan konfigurasi.
- 5Kirim untuk review dengan catatan rilis, akun demo, dan catatan untuk reviewer yang menjelaskan hal-hal yang tidak biasa.
- 6Rilis ke sebagian kecil pengguna dulu dengan staged rollout di Google Play atau phased release di App Store, pantau laporan crash, lalu perluas.
Setelah Rilis Pertama
Simpan checklist rilis di repository, dan otomatiskan build serta upload dengan Fastlane atau sistem CI begitu rilis sudah rutin. Pantau Android vitals dan laporan crash di Xcode Organizer beberapa hari setelah setiap update. Jadwalkan satu rilis perawatan per tahun untuk masing-masing platform, karena kedua toko terus mewajibkan versi SDK yang lebih baru. Aplikasi yang tidak pernah di-build ulang lama-lama tidak bisa di-update sama sekali.
Perusahaan yang melayani pengguna di Indonesia juga perlu mengecek kewajiban mendaftar sebagai Penyelenggara Sistem Elektronik (PSE) lingkup privat di Komdigi. Permintaan dokumen dari toko aplikasi maupun regulator sering datang setelah aplikasi rilis, jadi lebih mudah disiapkan bersamaan dengan listing aplikasi.
Poin penting
- Daftarkan kedua akun developer atas nama perusahaan dan ajukan nomor D-U-N-S di awal proyek.
- Pakai Play App Signing, dan simpan upload key serta password-nya di luar repository.
- Akun Google Play pribadi yang baru wajib closed test 14 hari dengan minimal 12 tester sebelum production.
- Siapkan akun demo untuk reviewer App Store dan tes di perangkat fisik supaya terhindar dari penolakan yang paling umum.
- Rilis secara bertahap dan build ulang setiap tahun untuk memenuhi syarat SDK terbaru.


