Configure iOS Sandbox-Testen
Eine Einrichtungsvorlage mit den Installationsanweisungen und der vollständigen Markdown-Anleitung für diesen Plugin.
Zur Durchführung von In-App-Käufen auf iOS ist eine ordnungsgemäße Konfiguration in App Store Connect und auf Ihren Testgeräten erforderlich. Diese Anleitung deckt alles ab, was Sie zum Starten mit Sandbox-Testen benötigen.
Voraussetzungen
Abschnitt mit dem Titel „Voraussetzungen“- Apple-Entwickler-Programm: Aktive Mitgliedschaft mit jährlicher Erneuerung
- Zustimmungen: Unterzeichnetes "Zahlungspflichtiges Anwendungsabkommen" mit Bank- und Steuerinformationen abgeschlossen
- Xcode-Projekt: Konfiguriert mit korrektem Bundle-Identifier und -Fähigkeiten
Einrichtungsprozess
Abschnitt mit dem Titel "Einrichtungsprozess"-
Zahlungspflichtiges Anwendungsabkommen unterzeichnen
In App Store Connect navigieren Sie zu Zustimmungen, Steuern und Banken und abschließen:
- Zustimmen Sie dem Bezahlvereinbarung
- Fügen Sie Ihre Bankverbindung hinzu
- Füllen Sie Steuerformulare aus
Warten Sie auf die Genehmigung durch Apple (dies kann bis zu 48 Stunden dauern).
-
Sandbox-Testnutzer erstellen
In App Store Connect gehen Sie zu Benutzer und Zugriff > Sandbox-Testern.
Klicken Sie auf den + Button, um einen neuen Sandbox-Testen zu erstellen.
Wichtig: Verwenden Sie eine E-Mail-Adresse, die NICHT bereits mit einem Apple-Konto verbunden ist. Sie können E-Mail-Aliase verwenden:
- Gmail:
youremail+test@gmail.com - iCloud:
youremail+test@icloud.com

- Gmail:
-
Testgerät konfigurieren (iOS 12+)
Ab iOS 12 benötigen Sie nicht mehr, um sich von Ihrem iTunes-Konto auszuloggen, um Kauftests durchzuführen.
Auf Ihrem iOS-Gerät:
- Öffnen Einstellungen
- Tippen App Store
- Zum Ende scrollen
- Tippen Sandbox-Konto
- Mit Ihrem Sandbox-Testkonto anmelden
-
Xcode-Projekt konfigurieren
Stellen Sie sicher, dass Ihr Xcode-Projekt folgende Anforderungen erfüllt:
Bundle-Identifier
- Muss dem Identifikator in Ihrem Developer Center entsprechen
- Muss dem Identifikator in App Store Connect entsprechen
In-App-Kauffunktion
- Wählen Sie Ihr Projekt in Xcode
- Gehe zu Signierung und Fähigkeiten
- Klicken Sie + Fähigkeit
- Hinzufügen In-App-Kauf
-
Erstellen Sie In-App-Kaufprodukte
Navigieren Sie in App Store Connect zu Ihrer App und erstellen Sie Ihre In-App-Kaufprodukte (Abonnements, Verbrauchsgüter usw.).
Produkte müssen mindestens im Status „Bereit zum Einreichen“ sein, um Sandbox-Tests durchzuführen.
-
Testen Sie Ihre Implementierung
Bauen und ausführen Sie Ihre App auf einem Testgerät. Wenn Sie einen Kauf versuchen, sollten Sie sehen:
[Umgebung: Sandbox]
Dieser Bestätigungsprozess zeigt an, dass Sie sich im Sandbox-Umgebung befinden und keine echten Gelder berechnet werden.
Wichtige Hinweise
Abschnitt mit dem Titel „Wichtige Hinweise“Sandbox-Umgebungseigenschaften
Abschnitt mit dem Titel „Sandbox-Umgebungseigenschaften“- Keine echten Gebühren: Alle Kaufs sind in der Sandbox-Modus kostenlos
- Beschleunigte Abonnements: Die Abonnementdauern werden verkürzt, um schnellere Tests zu ermöglichen
- 1-Wochen-Abonnement = 3 Minuten
- 1-Monats-Abonnement = 5 Minuten
- 2-Monats-Abonnement = 10 Minuten
- 3 Monate Abonnement = 15 Minuten
- 6 Monate Abonnement = 30 Minuten
- 1 Jahresabonnement = 1 Stunde
- Automatische Erneuerungsgrenze: Abonnements erneuern sich automatisch bis zu 6 Mal im Sandbox-Modus
- Sofortige Kündigung: Abgelaufene Abonnements erlöschen sofort
Sandbox-Konto-Verwaltung
Erstellen Sie mehrere Testkonten für verschiedene Szenarien- Verwenden Sie Testkonten nur auf Testgeräten
- Verwenden Sie keinen persönlichen Apple-ID für Sandbox-Tests
- Verwenden Sie keine persönliche Apple-ID für Sandbox-Tests
- Testkonten können jeden Produkt unabhängig von der Region kaufen
Mit Sandbox-Testen
Abschnitt mit dem Titel “Mit Sandbox-Testen”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);Verifizierung
Abschnitt mit dem Titel “Verifizierung”Wenn Sie es richtig konfigurieren, sollten Sie Folgendes beobachten:
- Sandbox-Banner während des Kaufs: „[Umgebung: Sandbox]”
- Produkte laden erfolgreich
- Käufe abschließen ohne tatsächliche Gebühren
- Rechnungen werden validiert richtig
- Abonnements erneuern automatisch (bei beschleunigter Geschwindigkeit)
Fehlersuche
Abschnitt mit dem Titel “Fehlersuche”Produkte laden nicht:
- Überprüfen Sie, ob die Bundle-Identifikationsnummer mit App Store Connect übereinstimmt
- Stellen Sie sicher, dass Vereinbarungen unterzeichnet und genehmigt sind
- Stellen Sie sicher, dass Produkte mindestens im Status „Zur Veröffentlichung bereit“ sind
- Warten Sie 2-3 Stunden nach Erstellung der Produkte
“Kann nicht mit iTunes Store verbunden werden”:
- Überprüfen Sie, ob der Sandbox-Konto korrekt konfiguriert ist
- Überprüfen Sie, ob das Gerät an das Internet angeschlossen ist
- Versuchen Sie, sich aus dem Sandbox-Konto auszuloggen und wieder einzuloggen
- App neu starten
Käufe schweigen still:
- Überprüfen Sie die Xcode-Konsol auf Fehlermeldungen
- Überprüfen Sie, ob die In-App-Kauffähigkeit aktiviert ist
- Stellen Sie sicher, dass die E-Mail-Adresse des Sandbox-Kontos kein echter Apple-ID ist
- Versuchen Sie, ein neues Sandbox-Testkonto zu erstellen
Fehler bei der Bezugserkennung:
- Verwenden Sie in der Testphase die Sandbox-Bezugserkennungs-Endpunkt
- Produktions-Endpunkt:
https://buy.itunes.apple.com/verifyReceipt - Sandbox-Endpunkt:
https://sandbox.itunes.apple.com/verifyReceipt - Der native-purchases-Plugin handhabt dies automatisch
Falsche Abonnementdauer:
- Denken Sie daran, dass Abonnements im Sandbox-Modus beschleunigt werden
- Verwenden Sie die oben stehende Umrechnungstabelle für die erwartete Dauer
- Abonnements werden im Sandbox-Modus höchstens 6 Mal automatisch erneuert
„Dieses Apple-Konto wurde noch nicht im iTunes Store verwendet“:
- Das ist normal für neue Sandbox-Konten
- Fahren Sie mit der Kaufabwicklung fort, um das Konto zu aktivieren
- Erstellt sich nur bei der ersten Verwendung
Gute Praktiken
Abschnitt mit dem Titel “Best Practices”- Erstellen Sie mehrere Testkonten für verschiedene Testanwendungsfälle
- Testen Sie alle Abonnementdauern um das Verhalten zu überprüfen
- Testen Sie die Abbruch- und Wiederholungsströme Überprüfen Sie die Empfangsvalidierung
- funktioniert richtig Testen Sie die Wiederherstellung von Kaufleistungen
- Funktion Überprüfen Sie die Abonnementauf- und -abbau
- Überprüfen Sie die Funktion der Abonnementauf- und -abbau Verhalten
- Mit schlechten Netzwerkbedingungen testen
Produktion vs. Sandbox
Abschnitt mit dem Titel “Produktion vs. Sandbox”| Funktion | Sandbox | Produktion |
|---|---|---|
| Echte Gebühren | Nein | Ja |
| Laufzeit der Abonnement | Beschleunigt | Normal |
| Automatischer Abonnementstopp | 6 Mal | Unbegrenzt |
| Stornoeffekt | Sofortig | Ablaufdatum |
| Beleg-Endpunkt | Sandbox-URL | Produktions-URL |
| Nur Testkonten | Ja | Nein |
Zusätzliche Ressourcen
Abschnitt mit dem Titel “Zusätzliche Ressourcen”Für weitere Details, beziehen Sie sich auf die offizielle Apple StoreKit-Dokumentation auf Sandbox-Testungen.
Weitermachen Sie von Configure iOS Sandbox Testing
Abschnitt mit dem Titel “Weitermachen Sie von Configure iOS Sandbox Testing”Wenn Sie Configure iOS Sandbox Testing zum Planen der Genehmigung und Verteilung in den App Store verwenden, verbinden Sie es mit Verwenden Sie @capgo/native-purchases für die native Fähigkeit in Using @capgo/native-purchases, @capgo/capacitor-in-app-Bewertung für die Implementierungsdetails in @capgo/capacitor-in-app-Bewertung, Using @capgo/capacitor-in-app-Bewertung für die native Fähigkeit in Using @capgo/capacitor-in-app-Bewertung, @capgo/capacitor-native-Markt für die Implementierungsdetails in @capgo/capacitor-native-Markt, und Using @capgo/capacitor-native-Markt für die native Fähigkeit in Using @capgo/capacitor-native-Markt.