Configura il testing Sandbox iOS
Copia un prompt di configurazione con i passaggi di installazione e la guida markdown completa per questo plugin.
La prova degli acquisti in-app su iOS richiede una configurazione corretta in App Store Connect e sui dispositivi di test. Questa guida copre tutto ciò di cui hai bisogno per iniziare con la sandbox testing.
Requisiti preliminari
Sezione intitolata “Requisiti preliminari”- Apple Developer Program: Iscrizione attiva con rinnovo annuale
- Agreements: Firmato “Paid Applications Agreement” con informazioni bancarie e fiscali completate
- Xcode Project: Configurato con identificatore di bundle e capacità corretti
Setup Process
Scheda intitolata “Setup Process”-
Firma Paid Applications Agreement
In App Store Connect, naviga a Accordi, Tasse e Banca e completa:
- Firma l'Accordo per le Applicazioni a pagamento
- Aggiungi le tue informazioni bancarie
- Completa i moduli di tasse
Aspetta che Apple approvi le tue informazioni (questo può richiedere 24-48 ore).
-
Crea Utente di Test Sandbox
In App Store Connect, vai a Utenti e Accesso > Testers di Sandbox.
Clicca sul + tasto per creare un nuovo tester di sandbox.
Importante: Utilizza un indirizzo email che NON è già associato a un ID Apple. Puoi utilizzare alias di email:
- Gmail:
youremail+test@gmail.com - iCloud:
youremail+test@icloud.com

- Gmail:
-
Configura dispositivo di test (iOS 12+)
A partire da iOS 12, non è più necessario disconnettersi dall'account iTunes per effettuare acquisti di prova.
Su dispositivo iOS:
- Apri Impostazioni
- Tocca App Store
- Scorri fino in fondo
- Tocca Account Sandbox
- Accedi con il tuo account di test sandbox
-
Configura Progetto Xcode
Assicurati che il tuo progetto Xcode abbia:
Identificatore Bundle
- Deve corrispondere all'identificatore nel tuo Centro sviluppatore
- Deve corrispondere all'identificatore in App Store Connect
Capacità di acquisto in-app
- Seleziona il tuo progetto in Xcode
- Vai a Firma e capacità
- Clicca + Capacità
- Aggiungi Acquisto in-app
-
Crea prodotti di acquisto in-app in App Store Connect
In App Store Connect, naviga nel tuo app e crea i tuoi prodotti di acquisto in-app (abbonamenti, consumabili, ecc.).
I prodotti devono essere in almeno lo stato “Pronto per la pubblicazione” per il testing del sandbox.
-
Testa la tua implementazione
Costruisci e esegui l'app sul dispositivo di test. Quando tenti un acquisto, dovresti vedere:
[Ambiente: Sandbox]
Questa conferma indica che ti trovi nell'ambiente sandbox e non sarai addebitato denaro reale.
Nota importante
Sezione intitolata “Nota importante”Caratteristiche dell'ambiente Sandbox
Sezione intitolata “Caratteristiche dell'ambiente Sandbox”- Nessun carico reale: Tutti gli acquisti sono gratuiti in modalità sandbox
- : Le durate delle sottoscrizioni sono abbreviate per un test più veloce1 settimana di sottoscrizione = 3 minuti
- Environment: Sandbox
- 1 mese di abbonamento = 5 minuti
- 2 mesi di abbonamento = 10 minuti
- 3 mesi di abbonamento = 15 minuti
- 6 mesi di abbonamento = 30 minuti
- 1 anno di abbonamento = 1 ora
- Limite di rinnovo automatico: I sottoscrizioni si rinnovano fino a 6 volte in sandbox
- Cancellazione immediata: Le sottoscrizioni annullate scadono immediatamente
Gestione del conto di sandbox
Sottosezione intitolata “Gestione del conto di sandbox”- Creare più conti di prova per scenari diversi
- Usa solo conti di prova su dispositivi di prova
- Non utilizzare un ID Apple personale per il testing del sandbox
- I conti di prova possono acquistare qualsiasi prodotto indipendentemente dalla regione
Utilizzo del testing del sandbox
Sezione intitolata “Utilizzo del testing del 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);Verifica
Sezione intitolata “Verifica”Quando configurato correttamente, dovresti osservare:
- Banner del sandbox durante l'acquisto: '[Ambiente: Sandbox]'
- Prodotti caricati con successo
- Acquisti completati senza spese effettive
- Le ricevute si verificano correttamente
- Le sottoscrizioni si rinnovano automaticamente (a un ritmo accelerato)
Risoluzione dei problemi
Sezione intitolata “Risoluzione dei problemi”I prodotti non si caricano:
- Verifica che l'identificatore del bundle corrisponda a App Store Connect
- Assicurati che gli accordi siano firmati e approvati
- Assicurarsi che i prodotti siano almeno in stato “Pronto per la pubblicazione”
- Attendere 2-3 ore dopo aver creato i prodotti
“Impossibile connettersi al iTunes Store”:
- Verificare che l'account sandbox sia configurato correttamente
- Controllare che il dispositivo sia collegato a Internet
- Prova a disconnettersi e a riconnetterti all'account sandbox
- Riavvia l'app
Acquisti che falliscono in silenzio:
- Controlla il console di Xcode per i messaggi di errore
- Verifica che la capacità di acquisto in-app sia abilitata
- Assicurati che l'indirizzo email dell'account sandbox non sia un ID Apple reale
- Prova a creare un nuovo account di test sandbox
Error di validazione della ricevuta:
- Usa l'endpoint di validazione della ricevuta sandbox in fase di testing
- Endpoint di produzione:
https://buy.itunes.apple.com/verifyReceipt - Endpoint sandbox:
https://sandbox.itunes.apple.com/verifyReceipt - Il plugin native-purchases gestisce automaticamente questo aspetto
Durata della sottoscrizione sbagliata:
- Ricorda che le sottoscrizioni sono accelerate nel sandbox
- Usa la tabella di conversione sopra per le durate previste
- Le sottoscrizioni si rinnovano automaticamente fino a 6 volte nel sandbox
“Questa Apple ID non è ancora stata utilizzata nell'iTunes Store”:
- Questo è normale per nuovi account sandbox
- Procedi con l'acquisto per attivare l'account
- Avviene solo alla prima utilizzo
Pratiche Migliori
Sezione intitolata “Pratiche Migliori”- Crea più conti di test per diversi scenari di test
- Testa tutte le durate di abbonamento per verificare il comportamento
- Testa le flussi di cancellazione e rinnovo Verifica la validazione della ricezione
- funziona correttamente Testa la ripristino degli acquisti
- Testa la ripristinazione degli acquisti funzionalità
- Verifica l'aggiornamento/abbassamento della sottoscrizione comportamento
- Testare con condizioni di rete scarse
Produzione vs. Sandbox
Sottosezione intitolata “Produzione vs. Sandbox”| Funzione | Sandbox | Produzione |
|---|---|---|
| Carichi reali | No | Yes |
| Durata della sottoscrizione | Accelerato | Normale |
| Limite di rinnovo protetto | 6 volte | Senza limiti |
| Effetto della cancellazione | Istantaneo | Fine del periodo |
| Punto di ricezione della ricevuta | URL del sandbox | URL di produzione |
| Conti di prova solo | Sì | No |
Risorse aggiuntive
Sezione intitolata “Risorse aggiuntive”Per ulteriori informazioni, si prega di consultare il documento ufficiale di Apple StoreKit sui test di sandbox.
Continua da Configurazione dei test di sandbox iOS
Sezione intitolata “Continua da Configurazione dei test di sandbox iOS”Se stai utilizzando Configurazione dei test di sandbox iOS per pianificare l'approvazione e la distribuzione della store, connettilo con Usando @capgo/native-purchases per la capacità nativa in Usando @capgo/native-purchases, @capgo/capacitor-in-app-review per il dettaglio di implementazione in @capgo/capacitor-in-app-review, Usando @capgo/capacitor-in-app-review per la capacità nativa in Usando @capgo/capacitor-in-app-review, @capgo/capacitor-native-market per il dettaglio di implementazione in @capgo/capacitor-native-market, e Usando @capgo/capacitor-native-market per la capacità nativa in Usando @capgo/capacitor-native-market.