Konfigurasi Pengujian Sandbox iOS
Salin prompt pengaturan dengan langkah instalasi dan panduan markdown lengkap untuk plugin ini.
Pengujian pembelian dalam aplikasi di iOS memerlukan pengaturan yang tepat di App Store Connect dan pada perangkat uji Anda. Panduan ini mencakup segala yang Anda butuhkan untuk memulai pengujian sandbox.
Prasyarat
Judul bagian “Prasyarat”- Program Pengembang Apple: Anggota aktif dengan perpanjangan tahunan
- Perjanjian: Menandatangani “Perjanjian Aplikasi Bayar” dengan informasi perbankan dan pajak selesai
- Proyek Xcode: Dikonfigurasi dengan identifier paket yang tepat dan kemampuan
Proses Pengaturan
Judul bagian “Proses Pengaturan”-
Tanda Tangan Perjanjian Aplikasi Bayar
Di App Store Connect, navigasikan ke Perjanjian, Pajak, dan Perbankan dan lengkapi:
- Tanda tangani Perjanjian Aplikasi Berbayar
- Tambahkan informasi perbankan Anda
- Lengkapi formulir pajak
Tunggu Apple 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 untuk menguji pembelian.
Pada perangkat iOS Anda:
- Buka Pengaturan
- Sentuh App Store
- Gulir ke bawah
- Sentuh Akun Sandbox
- Masuk dengan akun uji sandbox Anda
-
Konfigurasi Projek Xcode
Pastikan projek Xcode Anda memiliki:
Identifikasi Paket
- Harus sesuai dengan identifikasi di Pusat Pengembang Anda
- Harus sesuai dengan identifikasi di App Store Connect
In-App Purchase Capability
- Pilih Projek Anda di Xcode
- Pergi ke Tanda Tangan & Kemampuan
- Klik + Kemampuan
- Tambahkan In-App Purchase
-
Buat Produk Pembelian In-App
Dalam App Store Connect, navigasikan ke aplikasi Anda dan buat produk pembelian in-app (langganan, konsumabel, dll.).
Produk harus dalam status setidaknya “Siap untuk Mengirim” untuk tes sandbox.
-
Tes Implementasi Anda
Buat dan jalankan aplikasi Anda pada perangkat uji. Ketika Anda mencoba melakukan pembelian, Anda harus melihat:
[Lingkungan: Sandbox]
Konfirmasi ini menunjukkan Anda berada di lingkungan sandbox dan tidak akan dikenakan biaya uang sungguhan.
Catatan Penting
Judul Bagian “Catatan Penting”Sifat-Sifat Lingkungan Sandbox
Judul Bagian “Sifat-Sifat Lingkungan Sandbox”- Tidak Ada Biaya Nyata: Semua pembelian gratis dalam mode sandbox
- Langganan Dipercepat: Durasi langganan dipersingkat untuk tes yang lebih cepat
- 1 minggu langganan = 3 menit
- 1 bulan langganan = 5 menit
- 2 bulan langganan = 10 menit
- 3 bulan langganan = 15 menit
- 6 bulan langganan = 30 menit
- 1 tahun langganan = 1 jam
- Batasan auto-renewal: Langganan auto-renew hingga 6 kali di sandbox
- Pembatalan segera: Langganan yang dibatalkan berakhir segera
Pengelolaan Akun Sandbox
Judul bagian “Pengelolaan Akun Sandbox”- Buat beberapa akun uji coba 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
Judul bagian “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
Judul bagian “Verifikasi”Ketika dikonfigurasi dengan benar, Anda seharusnya melihat:
- Banner Sandbox selama pembelian: ‘[Lingkungan: Sandbox]’
- Produk muat berhasil
- Pembelian selesai tanpa tagihan sebenarnya
- Resi memvalidasi benar
- Langganan memperbarui otomatis (dengan kecepatan yang dipercepat)
Pengaturan
Bagian berjudul “Pengaturan”Produk tidak dimuat:
- Pastikan identifikasi paket sesuai dengan App Store Connect
- Periksa bahwa perjanjian telah ditandatangani dan disetujui
- Pastikan produk setidaknya dalam status “Siap Kirim”
- 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
- Coba keluar dan masuk kembali ke akun sandbox
- Restart aplikasi
Pembelian gagal diam-diam:
- Periksa console Xcode untuk pesan kesalahan
- Pastikan kemampuan Pembelian Aplikasi dalam App Store telah diaktifkan
- Pastikan alamat email akun sandbox bukan ID Apple yang sebenarnya
- Coba membuat akun uji sandbox baru
Error validasi bukti pembayaran:
- Gunakan endpoint validasi bukti pembayaran 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 durasi yang diharapkan
- Langganan sandbox dapat diperbarui maksimal 6 kali
"ID Apple ini belum pernah digunakan di iTunes Store":
- Hal ini normal untuk akun sandbox baru
- Lanjutkan pembelian untuk mengaktifkan akun
- Hanya terjadi pada penggunaan pertama
Praktik Terbaik
Judul Bagian “Praktik Terbaik”- Buat beberapa akun uji coba untuk skenario uji coba yang berbeda
- Uji semua durasi langganan untuk memverifikasi perilaku
- Uji aliran pembatalan dan pembaruan Uji validasi penerimaan
- Uji apakah pembayaran berfungsi dengan benar Uji pemulihan pembelian
- Uji pembelian kembali fungsionalitas
- Periksa upgrade/downgrade langganan perilaku
- Uji dengan kondisi jaringan yang buruk
Produksi vs. Sandbox
Bagian berjudul “Produksi vs. Sandbox”| Fitur | Sandbox | Produksi |
|---|---|---|
| Tanggungan asli | Tidak | Ya |
| Durasi langganan | Dipercepatkan | Normal |
| Batasan auto-renewal | 6 kali | Tidak terbatas |
| Efek pembatalan | Segera | Akhir periode |
| Endpoint bukti pembayaran | URL Sandbox | URL Produksi |
| Akun uji coba hanya | Ya | Tidak |
Sumber Daya Tambahan
Judul bagian “Sumber Daya Tambahan”Untuk informasi lebih lanjut, lihat dokumentasi resmi Apple StoreKit pada pengujian sandbox.
Teruskan dari Pengaturan Pengujian Sandbox iOS
Judul bagian “Teruskan dari Pengaturan Pengujian Sandbox iOS”Jika Anda menggunakan Pengaturan Pengujian Sandbox iOS Untuk merencanakan persetujuan toko dan distribusi, hubungkannya dengan Menggunakan @capgo/native-purchases Untuk kemampuan asli dalam Menggunakan @capgo/native-purchases, @capgo/capacitor-in-app-review Untuk detail implementasi dalam @capgo/capacitor-in-app-review, Menggunakan @capgo/capacitor-in-app-review Untuk kemampuan asli dalam Menggunakan @capgo/capacitor-in-app-review, @capgo/capacitor-native-market Untuk detail implementasi dalam @capgo/capacitor-native-market, dan Menggunakan @capgo/capacitor-native-market Untuk kemampuan asli dalam Menggunakan @capgo/capacitor-native-market.