Mengirimkan aplikasi pertama Anda ke App Store atau Play Store dapat terasa menakutkan. Dengan pedoman yang terus berkembang dan penindakan yang lebih ketat pada tahun 2026, mendapatkan aplikasi yang disetujui memerlukan perhatian yang teliti. Panduan ini komprehensif mengajarkan Anda segala yang perlu Anda ketahui untuk melewati ulasan pada pengiriman pertama Anda untuk kedua platform iOS dan Android.
Memahami Proses Ulasan pada Tahun 2026
Kedua Apple dan Google telah memperketat proses ulang pandang mereka dalam beberapa tahun terakhir, dengan penekanan khusus pada privasi, keamanan, dan pengalaman pengguna. Memahami perubahan ini sangat penting bagi pengembang baru.
Jadwal Ulang Pandang App Store iOS
- Ulang Pandang Standar: 24-48 jam
- Masa Sibuk: 3-5 hari (terutama selama musim liburan)
- Akhir Pekan: Tidak ada ulang pandang yang diproses
- Ulang Pandang Dipercepat: Tersedia untuk perbaikan bug kritikal (harus diminta melalui App Store Connect)
Tips Pro: Kirimkan awal dalam seminggu (Senin-Rabu) untuk menghindari keterlambatan akhir pekan. Pengajuan Senin biasanya diproses oleh Rabu.
Status App Store Connect yang Anda Lihat
- Siapkan untuk Pengiriman: Pembangunan atau metadata Anda masih dalam proses siap
- Tunggu Ulasan: Apple telah menerima pengajuan Anda di antrian
- Dalam Proses Ulasan: Tim ulasan sedang memeriksa aplikasi Anda
- Menunggu Rilis Pengembang: Diterima, tetapi menunggu pilihan rilis manual Anda
- Ditolak / Masalah yang Belum Terpecahkan: Apple membutuhkan perubahan sebelum persetujuan
Garis Waktu Ulasan Google Play Store (Update 2026)
- Ulasan Awal: 3-7 hari (signifikan lebih lama dari tahun-tahun sebelumnya)
- Penutupan Pengujian: 14 hari minimum untuk akun Play Console baru sebelum Anda dapat meminta akses produksi
- Pengujian Produksi Setelah Pengujian: Biasanya 3-7 hari lagi setelah syarat penutupan pengujian selesai
- Perbarui Aplikasi yang Sudah Ada: 1-3 hari
- Kekalahan Kebijakan: Bisa memakan waktu 14+ hari jika ulasan tambahan diaktifkan
Pemberitahuan Penting: Google sekarang memerlukan pengujian yang lebih ketat untuk beberapa akun Play Console baru, yang akan kita bahas secara rinci di bawah ini.
Setup Akun Pengembang Apple
Pastikan sisi Apple sudah terkonfigurasi dengan benar sebelum Anda merilis aplikasi iOS pertama kali:
- Daftar dalam Program Pengembang Apple
- Nyalakan autentikasi dua faktor untuk akun Apple yang digunakan untuk pendaftaran
- Pilih jenis keanggotaan yang tepat:
- Individu / Pemilik Usaha Sendiri: nama pribadi Anda menjadi nama penjual di App Store
- Organisasi: memerlukan entitas hukum, nomor D-U-N-S, situs web publik, dan orang dengan otoritas untuk mengikat perusahaan dengan perjanjian Apple
- Pakai nama-nama yang sah selama pendaftaran. Nama samaran atau nama perusahaan di bidang nama depan/telpon belakang dapat memperlambat persetujuan
- Setelah pendaftaran disetujui, masuk ke App Store Connect dan buat rekaman aplikasi dengan ID paket akhir, nama aplikasi, SKU, dan bahasa utama



Perlu diingat: Pengembang Apple dapat mengubah persyaratan minimum SDK secara berkala. Sejak 28 April 2026, aplikasi yang diunggah ke App Store Connect harus menggunakan versi iOS & iPadOS 26 __CAPGO_KEEP_0__ atau lebih baru iOS & iPadOS 26 SDK or later.
Ini adalah perubahan yang paling banyak mengejutkan para penerbit Android baru:
Kebutuhan 12 Pengujian untuk Akun Android Pribadi Baru
Jika akun pengembang Google Play Anda adalah
__CAPGO_KEEP_0__ akun pribadi dibuat setelah 13 November 2023anda harus menyelesaikan periode uji tertutup sebelum aplikasi dapat masuk ke produksi:
Persyaratan:
- Minimal 12 Pengujian: Anda harus merekrut setidaknya 12 tester yang telah menyetujui
- Periode Uji 14 Hari: Aplikasi harus tetap dalam uji tertutup selama minimal 14 hari berturut-turut
- Aplikasi Akses Produksi: Setelah periode uji, Anda masih perlu mengajukan akses produksi di Play Console
- Pengumpulan Komentar: Anda harus mendokumentasikan masalah yang ditemukan, perbaikan yang dilakukan, dan bagaimana tester menggunakan aplikasi
Bagaimana Mengatur Jalur Uji Anda
-
Buatlah Track Uji Coba Terkunci
- Pergi ke Google Play Console
- Navigasikan ke Uji dan rilis > Uji > Uji coba tertutup
- Buat rilis baru di track uji coba tertutup
- Unggah Paket Aplikasi Android Anda (
.aab)
-
Perekrutlah Teser
Dimana Anda dapat menemukan teser:
- Teman-teman dan keluarga (titik awal yang paling mudah)
- Masyarakat pengembang (Reddit's /r/androiddev, /r/betatests)
- Pengikut media sosial
- Platform tes beta (BetaList, BetaTesting.com)
- Siswa universitas (jika Anda memiliki koneksi)
Perlu diingat: Pastikan tester:
- Punya akun Gmail yang valid
- Memang menggunakan perangkat Android
- Mengaktifkan opsi selama periode penuh 14 hari
-
Undang Tester
- Membuat daftar tester di Play Console
- Menambahkan alamat email tester
- Bagikan URL opsi masuk dengan tester Anda
- Kirim pengingat untuk memastikan mereka menginstal dan menggunakan aplikasi
-
Pantau Aktivitas Uji Coba
- Periksa Play Console untuk jumlah instalasi
- Lacak laporan kegagalan aplikasi dan ANR (Aplikasi Tidak Mengrespons)
- Kumpulkan umpan balik dari tes tester
- Pemecahkan masalah kritis sebelum promosi
-
Promosikan ke Produksi
- Sesudah 14 hari dengan 12+ tester yang memilih untuk berpartisipasi
- Aplikasikan akses produksi dari dashboard Play Console
- Ulas semua laporan kegagalan aplikasi dan umpan balik
- Buat rilis produksi dan ajukan untuk tinjauan akhir
Mengapa Google Melaksanakan Ini
Google memperkenalkan persyaratan ini untuk:
- Mengurangi spam aplikasi berkualitas rendah
- Menggunakan aplikasi yang tepat sebelum mencapai pengguna
- Identifikasi Aplikasi Berbahaya melalui Pola Penggunaan Dunia Nyata
- Perbaiki Kualitas Toko Aplikasi secara Umum
Pengecekan Kebenaran: Ini menambahkan waktu minimal 2-3 minggu pada jadwal peluncuran Anda. Rencanakan sebelumnya dan mulai merekrut tester awal.
Persyaratan Autentikasi dan Login
Salah satu alasan paling umum penolakan adalah implementasi autentikasi yang tidak tepat, terutama login sosial.
Persyaratan Sign-In Apple (Kritis untuk iOS)
Aturan Apple: Jika aplikasi Anda menawarkan opsi login sosial pihak ketiga (Google, Facebook, Twitter, dll.), Anda harus menawarkan Sign in dengan Apple sebagai opsi.
ini berlaku untuk:
- Google Sign-In
- Login Facebook
- Login Twitter/X
- Login LinkedIn
- Jasa autentikasi pihak ketiga lainnya
Hal ini TIDAK berlaku untuk:
- Autentikasi email/password saja
- Sistem ID pemerintah
- Sistem SSO perusahaan (ketika aplikasi untuk perusahaan tersebut)
- Sistem autentikasi penyedia layanan pendidikan
Mengimplementasikan Sign in dengan Apple
Jika Anda menggunakan login sosial, berikut ini yang perlu Anda implementasikan:
import { SignInWithApple } from '@capacitor-community/apple-sign-in';
async function signInWithApple() {
try {
const result = await SignInWithApple.authorize({
clientId: 'com.yourapp.service',
redirectURI: 'https://yourapp.com/auth/callback',
scopes: 'email name',
state: '12345',
nonce: 'nonce',
});
// result contains:
// - identityToken
// - authorizationCode
// - email (may be null if user previously authorized)
// - givenName
// - familyName
// Send to your backend for verification
await verifyAppleToken(result.identityToken);
} catch (error) {
console.error('Apple Sign In failed:', error);
}
}
Konsiderasi Penting:
-
Privasi Email: Pengguna dapat memilih untuk menyembunyikan alamat email mereka. Apple menyediakan relay email pribadi (misalnya,
abc123@privaterelay.appleid.com). Aplikasi Anda harus menangani hal ini. -
Antara Pengguna Baru dan Pengguna Kembali: Apple hanya menyediakan detail pengguna (nama, email) pada autentikasi pertama. Simpan informasi ini karena sign-in berikutnya tidak akan mencakupnya.
-
Desain Tombol: Apple menyediakan pedoman desain ketat untuk tombol Sign in dengan Apple. Gunakan aset resmi mereka.
-
Pengverifikasi Backend: Selalu verifikasi token identitas di server backend Anda, jangan pernah percaya token sisi klien sendiri.
Persyaratan Login Sosial Android
: Meskipun Android tidak memerlukan penyedia spesifik seperti iOS, Google memiliki pedoman:
Persyaratan Google Sign-In:
- Wajib menggunakan Google Sign-In SDK yang resmi
- Wajib mengikuti pedoman merek Google
- Sebaiknya menjadi pilihan utama jika Anda menawarkannya
Praktik Terbaik untuk Platform Berbeda: Tawarkan opsi login yang sama pada kedua platform untuk konsistensi:
- Email/password
- Tandatangani dengan Apple (hanya untuk iOS, atau pada Android jika Anda mendukung login web Apple)
- Tandatangani dengan Google
- context: Halaman/area: Capgo Builder / produk halaman build asli. Peran: Label UI pendek atau item navigasi. Dilihat di: halaman native-build.astro. Pesan kunci `native_build_v2_wiz_and_s1_l` (Native Build V2 Wiz And S1 L).
Opsi social lainnya (Facebook, Twitter, dll.)
Persyaratan Akun Demo: Jika aplikasi Anda memerlukan login, Anda harus menyediakan kredit demo yang berfungsi di Catatan Tinjauan Aplikasi.
Demo Account Information:
Username: reviewer@demo.com
Password: ReviewTest123!
OR
Test Phone: +1 555-0123
Test OTP: 123456 (static for review)
Notes:
- This account has full premium features enabled
- All payment flows work in sandbox mode
- Account will reset daily
Kesalahan Umum:
- Menyediakan kredit yang telah kedaluwarsa
- Akun demo tidak memiliki akses ke semua fitur
- Melupakan cara untuk menghindari verifikasi ponsel
- Melupakan untuk menyebutkan detail pembayaran sandbox
Kebijakan Privasi dan Persyaratan Hukum
Kedua toko aplikasi sekarang memerlukan kebijakan privasi yang dapat diakses dan syarat layanan yang dapat diakses sebelum context: HTML fragment teks dari string Capgo UI yang lebih panjang (parent key `create_an_issue_and_discuss_before_working_on_a_new_feature`). Halaman/area: Situs web pemasaran Capgo. Peran: Paragraf pemasaran atau hukum yang panjang. Dilihat di: halaman contributing.astro. Kunci pesan `create_an_issue_and_discuss_before_working_on_a_new_feature` (Buat Isu Dan Diskusikan Sebelum Bekerja Pada Fitur Baru). | Fragment teks HTML dari string Capgo UI yang lebih panjang (parent key `mention_issue_before_working`). Halaman/area: Situs web pemasaran Capgo. Peran: Kalimat teks situs web. Dilihat di: halaman contributing.astro. Kunci pesan `mention_issue_before_working` (Sebutkan Isu Sebelum Bekerja). aplikasi pertama Anda disetujui.
Persyaratan Kebijakan Privasi
Kebijakan privasi Anda harus:
-
Terbuka untuk Umum
- Dihosting di URL publik (bukan di balik login)
- Dapat diakses oleh peramban web standar
- Terjemahan bahasa yang sama dengan aplikasi Anda
-
Mengcover Topik Wajib Ini:
- Apa data yang Anda kumpulkan (jelaskan secara spesifik)
- Bagaimana Anda menggunakan data yang dikumpulkan
- Apakah data disebarkan kepada pihak ketiga
- Berapa lama data disimpan
- Hak pengguna (akses, penghapusan, portabilitas)
- Informasi Kontak untuk Pertanyaan Privasi
- Privasi Anak (Jika Aplikasi untuk Pengguna di Bawah 13/16)
-
Terhubung di Aplikasi
- Dapat Diakses dari Pengaturan atau Layar Akun
- Wajib Jauh dari Menu
- Harus Buka di Browser Default atau Browser Aplikasi
Dimana Menyimpan Kebijakan Privasi Anda
Pilihan 1: Situs Web Anda (Dianjurkan)
https://yourapp.com/privacy-policy
https://yourapp.com/terms-of-service
Pilihan 2: Halaman GitHub (Gratis)
https://yourusername.github.io/app-privacy-policy
Pilihan 3: Penghasil Kebijakan Privasi (Mulai Cepat)
Pentingcontext: Bug bounty program page. Role: UI label. Seen in: page bug-bounty.astro. Message key `bug_bounty_important_label` (Penting Label untuk Bug Bounty).
: Sementara generator dapat digunakan untuk memulai, pastikan kebijakan tersebut akurat dan mencerminkan praktik data yang sebenarnya. Template umum yang tidak sesuai dengan aplikasi Anda akan ditandai.
Persyaratan Ketentuan dan Syarat
- Sementara tidak selalu wajib, memiliki Ketentuan dan Syarat sangat disarankan dan diperlukan jika:
- Penggunaan pembelian dalam aplikasi atau langganan
- Penggunaan konten yang dihasilkan pengguna
- Penggunaan layanan di luar fungsi aplikasi dasar
Termasuk dalam:
- Kebijakan penggunaan yang dapat diterima
- Syarat penghentian akun
- Keterbatasan tanggung jawab
- Hak cipta intelektual
- Proses penyelesaian sengketa
- Kebijakan pengembalian uang (terutama untuk IAP)
Pengimplementasian dalam Aplikasi
// Settings or Account Screen
function LegalLinks() {
return (
<div className="legal-section">
<h3>Legal</h3>
<a
href="https://yourapp.com/privacy-policy"
target="_blank"
rel="noopener noreferrer"
>
Privacy Policy
</a>
<a
href="https://yourapp.com/terms-of-service"
target="_blank"
rel="noopener noreferrer"
>
Terms of Service
</a>
<a
href="https://yourapp.com/contact"
target="_blank"
rel="noopener noreferrer"
>
Contact Us
</a>
</div>
);
}
Persyaratan metadata toko aplikasi
Kedua toko memerlukan Anda untuk menyediakan URL kebijakan privasi selama pengajuan aplikasi:
iOS - App Store Connect:
- Info Aplikasi > Informasi Umum > URL Kebijakan Privasi
- Harus HTTPS (HTTP akan ditolak)
- Akan ditampilkan di halaman App Store Anda
- Tambahkan URL Bantuan dengan detail kontak yang sebenarnya untuk pengguna
- Wajib lengkapi kuesioner peringkat usia sebelum pengajuan
Android - Google Play Console:
- Kehadiran Toko > Pengaturan Toko > Kebijakan Privasi
- Diperlukan untuk semua aplikasi yang mengarahkan anak-anak
- Diperlukan kuat untuk semua aplikasi
Label Gizi Privasi (iOS)
iOS memerlukan pengungkapan privasi yang rinci dalam format 'label gizi':
Kategori yang Harus Dideklarasikan:
- Info KontakData Email, nama, nomor telepon
- Info KeuanganData Pembayaran
- LokasiData Lokasi
- Konten PenggunaData Pengguna
- Data PenggunaanData Penggunaan Produk
- Data Penggunaan ProdukData Penggunaan Produk
- Data Penggunaan ProdukData Kecelakaan, Data Kinerja
Masing-masing Jenis Data, Spesifikkan:
- Apakah data tersebut dikumpulkan
- Apakah data tersebut terkait dengan identitas pengguna
- Apakah data tersebut digunakan untuk pelacakan
- Tujuan pengumpulan data
Kesalahan Umum: Mengatakan Anda tidak mengumpulkan data ketika analytics SDK Anda melakukannya. Audit semua SDK pihak ketiga untuk pengumpulan data mereka.
Bab Data Keselamatan Google Play
Mirip dengan iOS, Android memerlukan deklarasi Data Keselamatan:
Langkah-Langkah:
- Pergi ke Console Play > Konten Aplikasi > Keselamatan Data
- Jawab pertanyaan tentang pengumpulan data
- Spesifikkan jenis data yang dikumpulkan
- Jelaskan praktik keamanan (enkripsi, dll.)
- Tunjukkan tautan ke kebijakan privasi
Kritis: Informasi ini berlaku secara hukum. Penipuan dapat menyebabkan aplikasi dihapus dan akun ditangguhkan.
Alasan Penolakan Pertama Waktu
Mengerti mengapa aplikasi ditolak membantu Anda menghindari kesalahan:
1. Aplikasi Crash atau Tidak Meluncur
Mengapa Hal Ini Terjadi:
- Mengetes hanya pada emulator, bukan perangkat nyata
- Kurangnya penanganan kesalahan untuk kegagalan jaringan
- Hardcoded API endpoints that are unreachable
- Mengasumsikan kemampuan perangkat tertentu (kamera, GPS)
Cara Mencegah:
// Always implement proper error handling
async function loadData() {
try {
const response = await fetch('https://api.yourapp.com/data');
if (!response.ok) {
throw new Error(`HTTP ${response.status}`);
}
const data = await response.json();
return data;
} catch (error) {
// Show user-friendly error
showError('Unable to load data. Please check your connection.');
// Log for debugging
console.error('Data load failed:', error);
// Graceful degradation
return getCachedData();
}
}
Daftar Periksa Pengujian:
- Uji coba pada perangkat nyata (minimal 2-3 model yang berbeda)
- Uji coba dengan koneksi internet yang buruk (gunakan Network Link Conditioner)
- Uji coba dengan mode pesawat
- Uji coba dengan izin yang ditolak
- Uji coba dengan instalasi segar (tidak ada data yang disimpan)
2. Fungsi Utama yang Hilang atau Rusak
Mengapa Hal Ini Terjadi:
- Fitur yang ditampilkan dalam screenshot belum ada
- Rekening demo tidak memiliki akses ke fitur yang diiklankan
- Fitur premium ditampilkan tetapi tidak diimplementasikan
- “Tanda ‘Akan Datang’ di aplikasi”
Bagaimana Mencegah:
- Hanya kirimkan ketika semua fitur yang diiklankan sudah selesai
- Pastikan rekening demo memiliki akses penuh
- Hapus atau nonaktifkan fitur yang belum selesai sebelum pengiriman
- Perbarui tangkapan layar untuk sesuai dengan build saat ini secara tepat
3. Konten yang Tidak Tepat untuk Peringkat Usia
Mengapa Hal Ini Terjadi:
- Peringkat usia ditetapkan ke 4+ tetapi aplikasi mengandung fitur sosial
- Peringkat usia tidak sesuai dengan konten yang sebenarnya
- Konten yang dihasilkan pengguna tanpa pengawasan
- Tautan ke konten eksternal yang tidak diawasi
Bagaimana Mengatur Rating Usia yang Tepat:
Rating Usia iOS:
- 4+ (tidak ada konten yang tidak pantas)
- 9+ (konten lemah ringan yang jarang terjadi)
- 12+ (konten yang moderat)
- 17+ (konten yang sering/intens)
Rating Konten Android:
- Semua Orang
- Semua Orang 10+
- Remaja
- Menginap 17+
- Dewasa hanya 18+
Penting: Jika pengguna dapat berbagi konten satu sama lain, Anda memerlukan:
- Sistem moderasi konten
- Fungsi melaporkan/mengunci
- Pedoman komunitas yang jelas
- Pengaturan usia jika diperlukan
4. Metadata yang Menipu atau Tidak Jelas
Mengapa Hal Ini Terjadi:
- Nama aplikasi berjanji fitur yang tidak ada
- Sketsa layar dari kompetitor atau mockup
- Ulasan palsu atau manipulasi peringkat
- Deskripsi mengandung superlatif tanpa bukti
Contoh Metadata yang Problematis:
❌ Buruk:
- Nama Aplikasi: “Best Fitness Tracker - #1 App”
- Deskripsi: “Aplikasi yang paling luar biasa, revolusioner, dan tercipta!”
- Screenshot: Foto stok umum
✅ Baik:
- Nama Aplikasi: “FitTrack - Logger Pekerjaan”
- Deskripsi: “Ikuti pekerjaan Anda dengan rutinitas yang dapat disesuaikan dan grafik kemajuan.”
- Screenshot: Layar aplikasi yang sebenarnya dari versi terkini
5. Pengujian yang Tidak Cukup (Terutama Pengujian Android Terkunci)
Why Ini Terjadi:
- Melupakan masa uji coba yang diperlukan selama 14 hari
- Tidak merekrut cukup tes tester
- Pengujian tidak menggunakan aplikasi secara nyata
- Tidak ada pemantauan kegagalan selama pengujian
Cara Mencegah:
- Merekrut tester 3-4 minggu sebelum peluncuran yang direncanakan
- Menggunakan Firebase Crashlytics atau yang serupa selama pengujian
- Melibatkan diri secara aktif dengan tester (survei, formulir umpan balik)
- Mengatasi masalah kritis sebelum mempromosikan ke produksi
6. Izin Tanpa Alasan
Why Ini Terjadi:
- Meminta lokasi tapi tidak digunakan
- Tidak menjelaskan izin kamera
- Tidak menjelaskan akses kontak
- Akses lokasi di latar belakang untuk aplikasi non-navigasi
Bagaimana Mengatasi:
iOS - Info.plist:
<key>NSCameraUsageDescription</key>
<string>Camera access is required to scan QR codes for quick login.</string>
<key>NSLocationWhenInUseUsageDescription</key>
<string>Location helps us show nearby fitness centers and outdoor running routes.</string>
<key>NSPhotoLibraryUsageDescription</key>
<string>Photo library access lets you upload a profile picture and share workout photos.</string>
Android - Strategi Izin:
<!-- Only request what you actually need -->
<uses-permission android:name="android.permission.CAMERA" />
<!-- Use when-in-use rather than always for location -->
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<!-- Avoid if possible -->
<!-- <uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" /> -->
Mengajukan Izin Akses Waktu Jalannya:
import { Camera } from '@capacitor/camera';
async function takePicture() {
// Request with context
const permissionStatus = await Camera.requestPermissions();
if (permissionStatus.camera === 'granted') {
const photo = await Camera.getPhoto({
quality: 90,
allowEditing: true,
resultType: 'uri'
});
return photo;
} else {
// Explain why permission is needed
showDialog(
'Camera access required',
'To upload a profile picture, please enable camera access in Settings.'
);
}
}
Persyaratan iOS yang Spesifik
Gambar Layar Aplikasi di App Store dan Pratinjau
Ukuran yang Diperlukan:
- iPhone 6.7: 1290 x 2796
- 13“ iPad: 2064 x 2752
- 12.9“ iPad: 2048 x 2732
Penting: Jika aplikasi Anda mendukung iPad, Anda harus mengunggah tangkapan layar iPad. Jangan memanjangkan tangkapan layar iPhone untuk menyesuaikan slot iPad.
Tangkapan Layar Terbaik:
- Wajib menampilkan konten aplikasi asli (tidak menggunakan mockup)
- Hapus status bar atau tampilkan konten yang realistis
- Localisasi untuk semua bahasa yang didukung
- Hindari tekst overlay yang berlebihan
- Tampilkan fitur utama dalam 2-3 tangkapan layar pertama
Pengaturan Metadata App Store Connect
Sebelum pengiriman, selesaikan bidang-bidang App Store Connect ini:
- Kebijakan Privasi URL: diperlukan untuk aplikasi iOS
- URL Bantuan: diperlukan, dan harus mengarah ke informasi kontak yang sebenarnya
- Penilaian Usia: lengkapi kuesioner untuk memungkinkan aplikasi dipublikasikan
- Informasi Penilaian Aplikasi: tambahkan kontak penilaian, kredit demo yang berfungsi jika login diperlukan, dan catatan yang jelas untuk tim penilaian
- Kemampuan Ekspor: jawab pertanyaan enkripsi, atau atur
ITSAppUsesNonExemptEncryptiondiInfo.plistketika perlu agar Anda tidak mengulangi jawaban yang sama setiap kali mengunggah
TestFlight Sebelum Ulasan Aplikasi
Lakukan satu tes TestFlight yang nyata sebelum ulasan produksi:
- Instal versi yang tepat dari TestFlight
- Masuk dengan akun ulasan yang sama yang Anda rencanakan untuk menyediakan
- Jalankan melalui pembelian, pengembalian, dan penghapusan path
- Konfirmasi bahwa reviewer dapat mencapai fitur kunci tanpa setup yang disembunyikan
- Jalankan pada iPhone dan iPad jika kedua-duanya didukung
Video Pratinjau Aplikasi (Opsional tetapi Direkomendasikan)
Persyaratan:
- Panjang 15-30 detik
- Harus menampilkan adegan aplikasi yang sebenarnya
- Boleh termasuk teks overlay singkat
- No musik dengan masalah hak cipta
- Sama dengan resolusi tangkapan layar
Implementasi Sign in dengan Apple
Sudah dibahas di atas, tetapi sangat penting untuk review iOS jika Anda memiliki login sosial.
Persyaratan Pembelian Aplikasi
Jika Anda menawarkan barang atau jasa digital:
Klarifikasi yang Diperlukan:
- Harga yang jelas sebelum pembelian
- Syarat-syarat langganan yang jelas
- Instruksi pembatalan yang terlihat
- Tombol restore pembelian
Contoh Layar Langganan yang Sesuai:
function SubscriptionOffer() {
return (
<div className="subscription-screen">
<h2>Choose Your Plan</h2>
<PlanCard>
<h3>Monthly</h3>
<p className="price">$9.99/month</p>
<ul>
<li>Unlimited workouts</li>
<li>Personalized plans</li>
<li>Progress tracking</li>
</ul>
<button>Subscribe</button>
</PlanCard>
<PlanCard>
<h3>Annual</h3>
<p className="price">$79.99/year</p>
<p className="savings">Save 33%</p>
<ul>
<li>Everything in Monthly</li>
<li>Priority support</li>
</ul>
<button>Subscribe</button>
</PlanCard>
<div className="subscription-terms">
<p>
Subscription automatically renews unless cancelled at least
24 hours before the end of the current period. Manage your
subscription in Settings.
</p>
<button onClick={restorePurchases}>Restore Purchases</button>
</div>
<div className="legal-links">
<a href="/privacy/">Privacy Policy</a> |
<a href="/terms">Terms of Service</a>
</div>
</div>
);
}
Persyaratan Android-Spesifik
Setup Akun Google Play Console
Sebelum rilis Android pertama Anda, pastikan akun Play Console dan shell aplikasi ada:
- Buat akun pengembang Anda di Pendaftaran Play Console
- Di Play Console, pergi ke Rumah > Buat Aplikasi
- Pilih bahasa default, jenis aplikasi/game, dan alamat email dukungan
- Terima kebijakan Play yang diperlukan, ekspor, dan deklarasi Signing Aplikasi Play
- Putuskan apakah aplikasi adalah gratis atau berbayar
Perlu Diperhatikan: Google memungkinkan Anda mengubah aplikasi berbayar menjadi gratis kemudian, tetapi setelah aplikasi telah ditawarkan secara gratis, tidak dapat diubah menjadi berbayar.
Syarat Paket Aplikasi
Perlu Diperhatikan: Google Play memerlukan format Paket Aplikasi Android (.aab), bukan APK:
# Sync the native Android project first
bunx cap sync android
# Then build the release app bundle
cd android
./gradlew bundleRelease
Target API Tingkat Syarat
Syarat Saat Ini: Aplikasi baru dan pembaruan aplikasi harus menargetkan Android 15 (API tingkat 35) atau lebih tinggi.
Perbarui di android/app/build.gradle:
android {
compileSdkVersion 35
defaultConfig {
targetSdkVersion 35
minSdkVersion 23 // Minimum supported version
}
}
Keamanan Data Google Play
Sudah dibahas di atas, tetapi sangat kritis untuk persetujuan Android.
Jalur Uji Coba Terkunci (Syarat Saat Ini)
Langkah ini sangat penting bagi akun pengembang pribadi baru: persyaratan 12 tester, 14 hari yang telah dijelaskan sebelumnya dalam panduan ini.
Timeline:
- Minggu 1: Merekrut tester, atur uji coba terkunci
- Minggu 2-3: Periode uji coba aktif (14 hari minimum)
- Minggu 4: Perbaiki masalah, siapkan rilis produksi
- Minggu 5: Kirimkan untuk tinjauan produksi
Target Audien dan Klasifikasi Konten
Kuesioner Klasifikasi Konten:
- Diperlukan untuk semua aplikasi
- Menghabiskan waktu 10-15 menit untuk menyelesaikan
- Mengatur klasifikasi usia (Semua, Remaja, Dewasa, dll.)
- Perbarui setiap kali konten Anda berubah dalam cara yang mempengaruhi jawaban
Topik yang Dibahas:
- Konten Kejam
- Konten Seksual
- Konten Berbahaya
- Konten Narkoba
- Konten Perjudian
- Fitur Interaksi Pengguna
Pentingcontext: Bug bounty program page. Role: UI label. Seen in: page bug-bounty.astro. Message key `bug_bounty_important_label` (Bug Bounty Important Label).
: Jika Anda memiliki konten yang dihasilkan pengguna atau fitur sosial, Anda harus mengungkapkan hal ini dan menerapkan moderasi.
Syarat Daftar Toko:
- Ikon Aplikasi (512 x 512 PNG)
- Grafik Fitur (1024 x 500 JPG atau PNG)
- Sketsa Layar Telepon (minimal 2, maksimal 8)
- Sketsa Layar Tablet 7“ (opsional tetapi disarankan)
- Sketsa Layar Tablet 10“ (opsional tetapi disarankan)
Deskripsi Persyaratan:
- Deskripsi Singkat (maksimal 80 karakter)
- Deskripsi Lengkap (maksimal 4000 karakter)
- Wajib menggambarkan fungsi aplikasi dengan akurat
- Tidak boleh mencantumkan informasi kontak atau harga
Daftar Periksa Sebelum Pengiriman
Sebelum Anda menekan tombol submit, lakukan periksaan ini secara menyeluruh:
Persyaratan Teknis
- Aplikasi meluncur dengan sukses pada perangkat nyata
- Semua fitur yang ditampilkan dalam tangkapan layar berfungsi
- Tidak ada konten tempat atau “Segera Hadir”
- Semua kunci ketiga pihak API adalah kunci produksi
- Pengelolaan kesalahan jaringan diimplementasikan
- Pertanyaan izin termasuk penjelasan yang jelas
- Aplikasi tidak crash di bawah kondisi jaringan yang buruk
- Aplikasi diuji dengan izin yang ditolak
- Aplikasi diuji pada versi OS yang didukung minimum
- Kerusakan memori dicek dan diperbaiki
Autentikasi & Login
- Jika menggunakan login sosial, Sign in dengan Apple termasuk (iOS)
- Kredensial akun demo disediakan dalam catatan ulasan
- Akun demo memiliki akses ke semua fitur
- Alur reset kata sandi berfungsi
- Fungsi keluar bekerja dengan benar
- Option penghapusan akun tersedia (diperlukan oleh GDPR/CCPA)
Hukum & Privasi
- Kebijakan privasi dapat diakses secara publik
- URL kebijakan privasi ditambahkan ke daftar aplikasi
- Kebijakan layanan ditampilkan secara publik (jika berlaku)
- Kebijakan privasi terhubung dalam aplikasi (Layar Pengaturan)
- Label nutrisi privasi akurat (iOS)
- Keamanan data selesai (Android)
- Tujuan pengumpulan data semua dijelaskan
- Kolaborasi data ketiga pihak SDK terungkap
Konten & Metadata
- Nama aplikasi mengikuti pedoman (tidak ada penumpukan kata kunci)
- Deskripsi akurat menggambarkan fungsi
- Gambar layar menampilkan layar aplikasi saat ini
- Gambar layar lokal untuk semua bahasa yang didukung
- Tidak ada pengacuan kompetitor dalam deskripsi
- Tidak ada superlatif tanpa bukti
- Peringkat usia sesuai dengan konten yang sebenarnya
- Alamat email yang dipantau
Spesifik iOS
- Masuk dengan Apple diimplementasikan (jika menggunakan login sosial)
- Semua ukuran layar tangkapan yang diperlukan disediakan
- Tangkapan layar iPad nyata diunggah jika dukungan iPad diaktifkan
- Deskripsi izin Info.plist jelas
- Tautan URL dukungan ditambahkan dengan detail kontak nyata
- Tautan ke Kebijakan Privasi ditambahkan di App Store Connect
- Kuesioner usia yang telah diselesaikan
- Kemampuan ekspor yang tepat telah dijawab
- Kontak App Review dan akun demo non-masa aktif disediakan
- Target iOS 15.0 atau lebih tinggi
- Jika IAP: harga jelas, tombol restore pembelian hadir
- No referensi ke Android atau platform lain
Spesifik Android
- Format bundle aplikasi (.aab) digunakan
- Target API 35 atau lebih tinggi
- Kuesioner penilaian konten selesai
- Gambar grafis terkait unggah
- Pengujian tertutup selesai jika akun Console Play Anda memerlukan (12 pengujian, 14 hari)
- Laporan kegagalan dari pengujian diperiksa dan diperbaiki
- No referensi ke iOS atau platform lain
Pengujian (Kebutuhan Saat Ini Android)
- 12+ pengujian rekrut jika akun Play Anda memerlukan pengujian tertutup
- Track pengujian tertutup dibuat
- 14 hari beruntun pengujian selesai
- Pengujung sebenarnya menggunakan aplikasi (bukan hanya menginstalnya)
- Pengawasan crash diaktifkan selama pengujian
- Masalah kritis dari pengujian diperbaiki
- Komentar dari pengujung direkam
Catatan Ulasan: Apa yang Harus Dimasukkan
Catatan Ulasan yang bagus dapat berarti perbedaan antara persetujuan instan dan penolakan. Berikut ini apa yang harus dimasukkan:
Template untuk Catatan Ulasan
APP REVIEW INFORMATION
=== Test Account ===
Email: reviewer@testapp.com
Password: TestReview123!
(This account has all premium features enabled)
(This account stays active during review)
=== Review Contact ===
Name: Jane Developer
Email: review@yourapp.com
Phone: +1 555-0100
=== Testing Instructions ===
1. Launch app and tap "Sign In"
2. Enter test credentials above
3. Navigate to "Dashboard" to see main features
4. Tap "Upgrade" to test subscription flow (sandbox mode)
5. Go to Settings > Account to see privacy policy and terms
=== Key Features to Test ===
- Workout tracking (tap "New Workout" on Dashboard)
- Progress charts (Analytics tab)
- Social sharing (Share button on workout details)
- Camera upload for profile picture (Settings > Profile)
=== Third-Party Services ===
- Firebase Authentication (for login)
- Stripe (for payments - sandbox mode)
- AWS S3 (for image uploads)
- Google Maps SDK (for location features)
=== Notes ===
- Location permission is optional, app works without it
- Camera permission only requested when uploading profile picture
- All subscription flows use Apple/Google sandbox environments
- Background location is not used
- Support URL and privacy policy are available from Settings > Account
=== Contact ===
For questions: developer@yourapp.com
Response time: Within 24 hours
Catatan Ulasan yang Spesifik untuk iOS
Untuk iOS, juga masukkan:
=== Device Coverage ===
Tested on: iPhone 15 Pro Max, iPad Pro 13-inch
=== App Store Connect Metadata ===
Support URL: https://yourapp.com/support
Privacy Policy: https://yourapp.com/privacy-policy
=== Submission Notes ===
- iPad screenshots match the current iPad UI
- Export compliance answered for this build
- Sign in with Apple is available on the login screen
Catatan Ulasan yang Spesifik untuk Android
Untuk Android, juga masukkan:
=== Testing Track Information ===
Closed testing period: [Start Date] to [End Date]
Number of active testers: 23
Critical issues found during testing: 2 (both fixed)
Test distribution method: Email invite list
=== Crash Data ===
Testing period crashes: 3 total
Crash rate: 0.8%
All crashes fixed in this build
=== API Levels ===
Target SDK: 35 (Android 15)
Min SDK: 23 (Android 6.0)
Tested on: Android 11, 12, 13, 14, 15
Apa yang Harus Dilakukan Jika Ditolak
Jangan panik - penolakan adalah hal yang umum, terutama untuk pengajuan pertama kali. Berikut cara menghadapinya:
Langkah-Langkah Setelah Ditolak
-
Baca Kembali Penolakan dengan Teliti
- Catat pedoman spesifik yang dilanggar (misalnya, 4.3, 5.1.1)
- Baca komentar reviewer secara menyeluruh
- Cari screenshot jika tersedia
-
Pahami Masalahnya
- Cari pedoman yang dilanggar di dokumentasi resmi
- Cari kasus yang sama secara online
- Periksa apakah itu kesalahpahaman atau masalah yang sah
-
Perbaiki Penyebab Utama
- Jangan hanya memperbaiki - perbaiki dengan benar
- Uji coba perbaikan secara menyeluruh
- Dokumentasikan perubahan yang Anda lakukan
-
Berikan Tanggapan yang Tepat
Jika penolakan itu benar:
Thank you for the feedback. I have addressed the issue: Issue: Missing Sign in with Apple option Resolution: Added Sign in with Apple as a login option alongside Google Sign-In. The button appears on the login screen and follows Apple's design guidelines. You can test with the provided demo account or by creating a new account with Apple Sign-In. Changes made in: v1.0.1 (build 2)Jika Anda percaya itu salah paham:
Thank you for reviewing my app. I believe there may be a misunderstanding regarding [specific issue]: [Explain clearly with screenshots if needed] The functionality exists at: Settings > [specific location] I've added additional detail to the review notes to help locate this feature. -
Kirim Lagi dengan Cepat
- Kirim ulang biasanya diperiksa lebih cepat (24-48 jam)
- Termasuk catatan ulang tinjauan yang diperbarui menjelaskan perbaikan
- Referensi ke pengiriman sebelumnya jika bermanfaat
Pengembalian Umum
Penolakan: 'Aplikasi Anda mengalami crash pada saat peluncuran'
Respons:
I sincerely apologize for the crash. I have identified and fixed
the issue:
Root cause: The app attempted to fetch data before network
initialization completed, causing a null reference exception.
Fix: Implemented proper async initialization with error handling
and offline mode. The app now gracefully handles network issues.
Testing: Verified on iPhone 12 (iOS 17), iPhone 14 Pro (iOS 17.1),
tested with WiFi, cellular, and airplane mode.
Build version: 1.0.2 (build 3)
Pembatalan: “Kebijakan Privasi Hilang”
Respons:
Thank you for the feedback. I have added the privacy policy:
URL: https://myapp.com/privacy-policy
Location in app: Settings > Privacy Policy (tappable link)
Also added to: App Store Connect > App Information > Privacy Policy URL
The privacy policy covers all data collection as disclosed in the
Privacy Nutrition Labels.
Pembatalan: “Tidak Sesuai dengan 4.2 - Fungsi Minimum”
Masalah ini lebih sulit. Ini berarti aplikasi Anda tidak melakukan cukup untuk layak menjadi aplikasi. Respons:
Thank you for the feedback. I'd like to clarify the app's
functionality:
Core Features:
1. [Feature 1 with specific details]
2. [Feature 2 with specific details]
3. [Feature 3 with specific details]
The app provides significant utility beyond a simple website by:
- Offline functionality for [specific feature]
- Native camera integration for [specific feature]
- Push notifications for [specific feature]
- Device hardware access for [specific feature]
Test account credentials have been provided to demonstrate all
features. Please let me know if you need additional clarification.
Praktik Terbaik Setelah Persetujuan
Pengumuman! Aplikasi Anda disetujui. Berikut cara untuk menjaga status tersebut:
Pengawasan Setelah Rilis
Kriteria Kritis untuk Diperhatikan:
- Rasio Kecelakaan (tetap di bawah 1%)
- Rasio ANR (Android - tetap di bawah 0,5%)
- Rasio Bintang Toko Aplikasi/Play Store
- Isi Konten Ulasan (balas semua ulasan)
- Bug yang Dilaporkan Pengguna
Alat yang Perlu Digunakan:
- Firebase Crashlytics
- Analitik App Store Connect
- Google Play Console Vitals
- Sentry atau Pemantauan Kesalahan yang Mirip
Pedoman Perbarui
Ketika Mengirimkan Perbaruan:
- Jalankan Uji Coba dengan Secara Mendalam Seperti Pengiriman Awal
- Perbarui Screenshot jika Tampilan UI Berubah Signifikan
- Perbarui Label Privasi jika Pengumpulan Data Berubah
- Berikan deskripsi yang jelas untuk perubahan "Baru"
- Perhatikan peluncuran tahap demi tahap untuk perubahan besar
Mengikuti Aturan
Persyaratan Tahunan:
- Perbarui peringkat konten Android (diperlukan setiap tahun)
- Perbarui kebijakan privasi jika praktiknya berubah
- Ulangi dan perbarui peringkat usia jika konten berubah
- Audit SDK pihak ketiga untuk kelayakan
Pemantauan Terus-Menerus:
- Terus diperbarui tentang perubahan pedoman
- Daftar diri di berita acara pengembang Apple/Google
- Partisipasi dalam komunitas pengembang
- Ikuti blog kebijakan App Store/Play Store
Sumber Daya dan Bacaan Lanjutan
Documentasi Resmi
Apple:
Google:
Sumber Daya Masyarakat
- r/androiddev - Komunitas pengembang Android
- r/iOSProgramming - Komunitas pengembang iOS
- Stack Overflow - Pertanyaan teknis
- Indie Hackers - Komunitas pengembang indie
Alat Kebijakan Privasi
Membutuhkan Bantuan dengan Ulasan Aplikasi Anda?
Jika Anda merasa terlalu berat atau ingin bantuan ahli untuk memastikan aplikasi Anda lolos ulasan pada kali pertama, kami ada di sini untuk membantu!
Booking panggilan konsultasi dengan tim kami untuk bantuan yang disesuaikan dengan:
- Persiapan ulasan toko aplikasi dan ulasan Play Store
- Pengujian kebijakan privasi dan dokumen hukum
- Pengimplementasian Sign in dengan Apple
- Pengujian strategi dan rekrutmen tester
- Pengujian catatan ulasan
- Pengujian tanggapan dan banding ulasan
- Proses pengiriman aplikasi lengkap
Tim kami telah membantu ratusan pengembang untuk menavigasi dengan sukses proses tinjauan aplikasi dan dapat menyelamatkan Anda dari minggu-minggu percobaan dan kesalahan.
Kesimpulan
Mengirimkan aplikasi pertama Anda mungkin terkesan menakutkan, tetapi dengan persiapan yang tepat, Anda dapat melewati tinjauan pada pertama kalinya. Ingatlah poin-poin penting ini:
- Mulai Awal: Terutama untuk Android - rekrutlah 12 tester setidaknya 3 minggu sebelum peluncuran yang direncanakan Anda
- Privasi Terlebih Dahulu: Siapkanlah kebijakan privasi Anda dan secara akurat menggambarkan praktik data Anda
- Tanda Tangan Apple: Jika Anda menggunakan login sosial, Anda harus termasuk Tanda Tangan Apple pada iOS
- Uji Coba Teliti: Uji coba pada perangkat nyata, dengan jaringan yang buruk, dan dengan izin yang ditolak
- Jujur: Informasi metadata dan pengungkapan privasi yang akurat mencegah penolakan dan masalah hukum
- Catatan Ulasan Rinci: Bantu reviewer memahami aplikasi Anda dengan cepat
Persyaratan pengujian Android saat ini menambah waktu proses, tetapi pada akhirnya menghasilkan aplikasi yang lebih baik dan masalah yang lebih sedikit setelah peluncuran. Rencanakan tambahan 3-4 minggu untuk pengajuan Android, dan Anda akan berada di posisi yang tepat untuk sukses.
Semoga sukses dengan peluncuran aplikasi Anda! Ingatlah, bahkan jika Anda ditolak, itu adalah kesempatan belajar. Aplikasi sukses paling banyak mengalami beberapa putaran ulasan sebelum disetujui.
Tidak ingin melakukannya sendiri? Jadwalkan konsultasi dan biarkan ahli kami mengarahkan Anda melalui proses.
Membutuhkan bantuan untuk menerapkan pembaruan hidup setelah aplikasi Anda disetujui? Cek out Capgo's solusi pembaruan hidup untuk pembaruan aplikasi yang lancar tanpa ulasan toko aplikasi.
Teruskan dari Panduan Ulasan Aplikasi Pertama untuk Pemula 2026 - iOS dan Android
Jika Anda menggunakan Panduan Ulasan Aplikasi Pertama untuk Pemula 2026 - iOS dan Android untuk merencanakan keamanan dan kewenangan, hubungkannya dengan Enkripsi untuk detail implementasi di Enkripsi, Kewenangan untuk detail implementasi di Kewenangan, Capgo Scanner Keamanan untuk alur kerja produk di Capgo Scanner Keamanan, Capgo Keamanan untuk alur kerja produk di Capgo Keamanan, dan Capgo Pusat Kepercayaan untuk alur kerja produk di Capgo Pusat Kepercayaan.