Konfigurasi Pengujian Sandbox iOS
Copas prompt pengaturan dengan langkah instalasi dan panduan markdown lengkap untuk plugin ini.
Menguji pembelian dalam aplikasi di iOS memerlukan pengaturan yang tepat di App Store Connect dan pada perangkat uji Anda. Petunjuk ini mencakup segala sesuatu yang Anda butuhkan untuk memulai dengan pengujian sandbox.
Prasyarat
Bagian berjudul “Prasyarat”- Program Pengembang Apple: Anggota aktif dengan perpanjangan tahunan
- Ketentuan: Menandatangani “Ketentuan Aplikasi Berbayar” dengan informasi keuangan dan pajak selesai
- Proyek Xcode: Konfigurasi dengan bundle identifier dan kemampuan yang tepat
Proses Pengaturan
Bagian berjudul “Proses Pengaturan”-
Tanda Tangan Perjanjian Aplikasi Berbayar
Dalam App Store Connect, navigasikan ke Perjanjian, Pajak, dan Keuangan dan lengkapi:
- Tanda Tangan Perjanjian Aplikasi Berbayar
- Tambahkan informasi keuangan Anda
- Lengkapi formulir pajak
Tunggu Apple untuk menyetujui informasi Anda (hal ini dapat memakan waktu 24-48 jam).
-
Buat Pengguna Uji Coba Sandbox
Di App Store Connect, pergi ke Pengguna dan Akses > Pengujian Sandbox.
Klik tombol + untuk membuat pengujian sandbox baru.
Penting: Gunakan alamat email yang TIDAK sudah terkait dengan ID Apple. Anda dapat menggunakan alias email:
- Gmail:
youremail+test@gmail.com - iCloud:
youremail+test@icloud.com

- Gmail:
-
Konfigurasi Perangkat Uji (iOS 12+)
Mulai dari iOS 12, Anda tidak perlu keluar dari akun iTunes Anda untuk menguji pembelian.
Pada perangkat iOS Anda:
- Buka Pengaturan
- Sentuh App Store
- Geser ke bagian bawah
- Sentuh Akun Sandbox
- Masuk dengan akun uji sandbox Anda
-
Konfigurasi Proyek Xcode
Pastikan proyek Xcode Anda memiliki:
Identifier Paket
- Harus sesuai dengan identifier di Pusat Pengembang
- Harus sesuai dengan identifier di App Store Connect
Kemampuan Pembelian Aplikasi
- Pilih proyek Anda di Xcode
- Buka Tanda Tangan & Kemampuan
- Klik + Kemampuan
- Tambahkan Pembelian Aplikasi
-
Buat Produk Pembelian Aplikasi
Dalam App Store Connect, navigasikan ke aplikasi Anda dan buat produk pembelian aplikasi (langganan, konsumabel, dll.).
Produk harus dalam status setidaknya “Siap untuk Mengirim” untuk tes sandbox.
-
Tes Implementasi Anda
Buat dan jalankan aplikasi Anda pada perangkat tes. Ketika Anda mencoba membeli, Anda seharusnya melihat:
[Lingkungan: Sandbox]
Konfirmasi ini menunjukkan Anda berada dalam lingkungan sandbox dan tidak akan dikenakan biaya uang nyata.
Catatan Penting
Bagian berjudul “Catatan Penting”Karakteristik Lingkungan Sandbox
Judul Bagian “Karakteristik Lingkungan Sandbox”- Tidak Ada Biaya yang Nyata: Semua pembelian gratis dalam mode sandbox
- Langganan yang Dipercepat: Durasi langganan dipendekkan untuk tes yang lebih cepat
- Langganan 1 minggu = 3 menit
- Langganan 1 bulan = 5 menit
- Langganan 2 bulan = 10 menit
- Langganan 3 bulan = 15 menit
- Langganan 6 bulan = 30 menit
- Langganan 1 tahun = 1 jam
- __CAPGO_KEEP_0__Maksud Auto-renewal: hingga 6 kali dalam mode sandbox
- __CAPGO_KEEP_1__Maksud Pembatalan Langsung: Langganan yang dibatalkan berakhir segera
Pengelolaan Akun Sandbox
Bagian berjudul “Pengelolaan Akun Sandbox”- Buat beberapa akun uji untuk skenario yang berbeda
- Gunakan akun uji hanya pada perangkat uji
- Jangan gunakan ID Apple pribadi untuk tes sandbox
- Akun uji dapat membeli produk apa pun tanpa mempertimbangkan wilayah
Menggunakan Tes Sandbox
Bagian berjudul “Menggunakan Tes Sandbox”import { NativePurchases, PURCHASE_TYPE } from '@capgo/native-purchases';
const { isBillingSupported } = await NativePurchases.isBillingSupported();if (!isBillingSupported) { throw new Error('StoreKit not supported on this device');}
// Fetch products (automatically uses sandbox when available)const { products } = await NativePurchases.getProducts({ productIdentifiers: ['premium_monthly'], productType: PURCHASE_TYPE.SUBS,});
// Make test purchaseconst transaction = await NativePurchases.purchaseProduct({ productIdentifier: 'premium_monthly', productType: PURCHASE_TYPE.SUBS,});
console.log('Test purchase successful!', transaction.transactionId);Verifikasi
Bagian berjudul “Verifikasi”Jika Anda telah mengkonfigurasi dengan benar, Anda seharusnya melihat:
- Banner Sandbox selama pembelian: “[Lingkungan: Sandbox]”
- Produk memuat dengan sukses
- Pembelian selesai tanpa tagihan sebenarnya
- Faktur memvalidasi dengan benar
- Langganan akan diperbarui secara otomatis (dengan kecepatan yang dipercepat) Bagian berjudul “Pengaturan”
Produk tidak terbuka:
Pastikan identifikasi paket sesuai dengan App Store ConnectPeriksa bahwa perjanjian telah ditandatangani dan disetujui
- Pastikan produk setidaknya memiliki status “Siap untuk Dikirim”
- Tunggu 2-3 jam setelah membuat produk
- “Tidak dapat terhubung ke iTunes Store”:
- Pastikan akun sandbox telah dikonfigurasi dengan benar
Periksa apakah perangkat terhubung ke internet
- Pengaturan
- Produk tidak terbuka: Pastikan identifikasi paket sesuai dengan App Store Connect
- Coba keluar dan masuk kembali ke akun sandbox
- Restart aplikasi
Pembelian gagal diam-diam:
- Periksa konsol Xcode untuk pesan kesalahan
- Pastikan kemampuan Pembelian dalam Aplikasi diaktifkan
- Pastikan alamat email akun sandbox bukan ID Apple yang sebenarnya
- Coba membuat akun uji sandbox baru
Error validasi bukti pembelian:
- Gunakan endpoint validasi bukti pembelian sandbox dalam pengujian
- Endpoint produksi:
https://buy.itunes.apple.com/verifyReceipt - Endpoint sandbox:
https://sandbox.itunes.apple.com/verifyReceipt - Plugin native-purchases menghandle hal ini secara otomatis
Durasi langganan yang salah:
- Ingat bahwa langganan di sandbox dipercepat.
- Gunakan tabel konversi di atas untuk mengetahui durasi yang diharapkan.
- Langganan akan diperbarui otomatis maksimal 6 kali di sandbox.
“This Apple ID has not yet been used in the iTunes Store”:
- Hal ini normal untuk akun sandbox baru.
- Lanjutkan pembelian untuk mengaktifkan akun.
- Hanya terjadi pada penggunaan pertama.
Praktik Terbaik
Bagian berjudul “Praktik Terbaik”- Buat beberapa akun uji coba untuk skenario uji coba yang berbeda Buat beberapa akun uji coba untuk skenario uji coba yang berbeda
- Menguji semua durasi langganan untuk memastikan perilaku untuk memastikan perilaku berfungsi dengan benar
- Menguji aliran pembatalan dan pembaruan Menguji validasi penerimaan
- Menguji fungsi pemulihan pembelian Menguji perilaku peningkatan/turunan langganan
- Menguji perilaku dengan kondisi jaringan yang buruk Menguji perilaku produksi vs. Sandbox
- __CAPGO_KEEP_0__ __CAPGO_KEEP_0__
- __CAPGO_KEEP_0__
__CAPGO_KEEP_0__
Bagian berjudul “Produksi vs. Sandbox”| Fitur | Sandbox | Produksi |
|---|---|---|
| Tunggakan sebenarnya | Tidak | Ya |
| Durasi langganan | Dipercepat | Normal |
| Batasan auto-renewal | 6 kali | Tidak Terbatas |
| Efek Pembatalan | Segera | Akhir Periode |
| Endpoint Pembayaran | URL Sandbox | URL Produksi |
| Hanya Akun Uji | Ya | Tidak |
Sumber Daya Tambahan
Bagian berjudul “Sumber Daya Tambahan”Untuk informasi lebih lanjut, silakan lihat dokumentasi resmi Apple StoreKit pada pengujian sandbox.