iOS Sandbox-Tests konfigurieren
Das Testen von In-App-Käufen auf iOS erfordert eine ordnungsgemäße Konfiguration in App Store Connect und auf Ihren Testgeräten. Dieser Leitfaden deckt alles ab, was Sie für den Einstieg in Sandbox-Tests benötigen.
Voraussetzungen
Section titled “Voraussetzungen”- Apple Developer Program: Aktive Mitgliedschaft mit jährlicher Verlängerung
- Vereinbarungen: Signierte “Paid Applications Agreement” mit ausgefüllten Bank- und Steuerinformationen
- Xcode-Projekt: Konfiguriert mit korrekter Bundle-Kennung und Funktionen
Einrichtungsprozess
Section titled “Einrichtungsprozess”-
Paid Applications Agreement unterzeichnen
Navigieren Sie in App Store Connect zu Vereinbarungen, Steuern und Banking und vervollständigen Sie:
- Unterzeichnen Sie die Paid Applications Agreement
- Fügen Sie Ihre Bankinformationen hinzu
- Füllen Sie die Steuerformulare aus
Warten Sie auf die Genehmigung Ihrer Informationen durch Apple (dies kann 24-48 Stunden dauern).
-
Sandbox-Testbenutzer erstellen
Gehen Sie in App Store Connect zu Benutzer und Zugriff > Sandbox-Tester.
Klicken Sie auf die +-Schaltfläche, um einen neuen Sandbox-Tester zu erstellen.
Wichtig: Verwenden Sie eine E-Mail-Adresse, die NICHT bereits mit einer Apple ID verknüpft ist. Sie können E-Mail-Aliase verwenden:
- Gmail:
ihreemail+test@gmail.com - iCloud:
ihreemail+test@icloud.com

- Gmail:
-
Testgerät konfigurieren (iOS 12+)
Ab iOS 12 müssen Sie sich nicht mehr von Ihrem iTunes-Konto abmelden, um Käufe zu testen.
Auf Ihrem iOS-Gerät:
- Öffnen Sie Einstellungen
- Tippen Sie auf App Store
- Scrollen Sie nach unten
- Tippen Sie auf Sandbox-Konto
- Melden Sie sich mit Ihrem Sandbox-Testkonto an
-
Xcode-Projekt konfigurieren
Stellen Sie sicher, dass Ihr Xcode-Projekt Folgendes hat:
Bundle-Kennung
- Muss mit der Kennung in Ihrem Developer Center übereinstimmen
- Muss mit der Kennung in App Store Connect übereinstimmen
In-App-Kauf-Funktion
- Wählen Sie Ihr Projekt in Xcode aus
- Gehen Sie zu Signierung & Funktionen
- Klicken Sie auf + Funktion
- Fügen Sie In-App-Kauf hinzu
-
In-App-Kauf-Produkte erstellen
Navigieren Sie in App Store Connect zu Ihrer App und erstellen Sie Ihre In-App-Kauf-Produkte (Abonnements, Verbrauchsgüter usw.).
Produkte müssen mindestens im Status “Bereit zur Einreichung” sein für Sandbox-Tests.
-
Ihre Implementierung testen
Erstellen und führen Sie Ihre App auf einem Testgerät aus. Wenn Sie einen Kauf versuchen, sollten Sie Folgendes sehen:
[Umgebung: Sandbox]
Diese Bestätigung zeigt an, dass Sie sich in der Sandbox-Umgebung befinden und kein echtes Geld belastet wird.
Wichtige Hinweise
Section titled “Wichtige Hinweise”Sandbox-Umgebungsmerkmale
Section titled “Sandbox-Umgebungsmerkmale”- Keine echten Belastungen: Alle Käufe sind im Sandbox-Modus kostenlos
- Beschleunigte Abonnements: Abonnementdauern werden für schnelleres Testen verkürzt
- 1 Woche Abonnement = 3 Minuten
- 1 Monat Abonnement = 5 Minuten
- 2 Monate Abonnement = 10 Minuten
- 3 Monate Abonnement = 15 Minuten
- 6 Monate Abonnement = 30 Minuten
- 1 Jahr Abonnement = 1 Stunde
- Auto-Verlängerungslimit: Abonnements werden in der Sandbox bis zu 6-mal automatisch verlängert
- Sofortige Kündigung: Gekündigte Abonnements laufen sofort ab
Sandbox-Kontoverwaltung
Section titled “Sandbox-Kontoverwaltung”- Erstellen Sie mehrere Testkonten für verschiedene Szenarien
- Verwenden Sie Testkonten nur auf Testgeräten
- Verwenden Sie keine persönliche Apple ID für Sandbox-Tests
- Testkonten können jedes Produkt unabhängig von der Region kaufen
Sandbox-Tests verwenden
Section titled “Sandbox-Tests verwenden”import { NativePurchases, PURCHASE_TYPE } from '@capgo/native-purchases';
const { isBillingSupported } = await NativePurchases.isBillingSupported();if (!isBillingSupported) { throw new Error('StoreKit wird auf diesem Gerät nicht unterstützt');}
// Produkte abrufen (verwendet automatisch Sandbox, wenn verfügbar)const { products } = await NativePurchases.getProducts({ productIdentifiers: ['premium_monthly'], productType: PURCHASE_TYPE.SUBS,});
// Testkauf durchführenconst transaction = await NativePurchases.purchaseProduct({ productIdentifier: 'premium_monthly', productType: PURCHASE_TYPE.SUBS,});
console.log('Testkauf erfolgreich!', transaction.transactionId);Überprüfung
Section titled “Überprüfung”Bei ordnungsgemäßer Konfiguration sollten Sie Folgendes beobachten:
- Sandbox-Banner während des Kaufs: “[Umgebung: Sandbox]”
- Produkte werden erfolgreich geladen
- Käufe werden abgeschlossen ohne tatsächliche Belastungen
- Belege werden korrekt validiert
- Abonnements werden automatisch verlängert (mit beschleunigter Rate)
Fehlerbehebung
Section titled “Fehlerbehebung”Produkte werden nicht geladen:
- Überprüfen Sie, ob die Bundle-Kennung mit App Store Connect übereinstimmt
- Prüfen Sie, ob Vereinbarungen unterzeichnet und genehmigt sind
- Stellen Sie sicher, dass Produkte mindestens im Status “Bereit zur Einreichung” sind
- Warten Sie 2-3 Stunden nach der Erstellung von Produkten
“Verbindung zum iTunes Store nicht möglich”:
- Überprüfen Sie, ob das Sandbox-Konto korrekt konfiguriert ist
- Prüfen Sie, ob das Gerät mit dem Internet verbunden ist
- Versuchen Sie, sich vom Sandbox-Konto ab- und wieder anzumelden
- Starten Sie die App neu
Käufe schlagen stillschweigend fehl:
- Prüfen Sie die Xcode-Konsole auf Fehlermeldungen
- Überprüfen Sie, ob die In-App-Kauf-Funktion aktiviert ist
- Stellen Sie sicher, dass die E-Mail des Sandbox-Kontos keine echte Apple ID ist
- Versuchen Sie, ein neues Sandbox-Testkonto zu erstellen
Belegvalidierungsfehler:
- Verwenden Sie den Sandbox-Belegvalidierungs-Endpunkt beim Testen
- Produktions-Endpunkt:
https://buy.itunes.apple.com/verifyReceipt - Sandbox-Endpunkt:
https://sandbox.itunes.apple.com/verifyReceipt - Das native-purchases Plugin behandelt dies automatisch
Falsche Abonnementdauer:
- Denken Sie daran, dass Abonnements in der Sandbox beschleunigt sind
- Verwenden Sie die obige Umrechnungstabelle für erwartete Dauern
- Abonnements werden in der Sandbox maximal 6-mal automatisch verlängert
“Diese Apple ID wurde noch nicht im iTunes Store verwendet”:
- Dies ist bei neuen Sandbox-Konten normal
- Fahren Sie mit dem Kauf fort, um das Konto zu aktivieren
- Tritt nur bei der ersten Verwendung auf
Best Practices
Section titled “Best Practices”- Erstellen Sie mehrere Testkonten für verschiedene Testszenarien
- Testen Sie alle Abonnementdauern, um das Verhalten zu überprüfen
- Testen Sie Kündigungs- und Verlängerungs-Abläufe
- Überprüfen Sie, ob die Belegvalidierung korrekt funktioniert
- Testen Sie die Wiederherstellung von Käufen-Funktionalität
- Prüfen Sie das Verhalten von Abonnement-Upgrade/Downgrade
- Testen Sie bei schlechten Netzwerkbedingungen
Produktion vs. Sandbox
Section titled “Produktion vs. Sandbox”| Funktion | Sandbox | Produktion |
|---|---|---|
| Echte Belastungen | Nein | Ja |
| Abonnementdauer | Beschleunigt | Normal |
| Auto-Verlängerungslimit | 6-mal | Unbegrenzt |
| Kündigungseffekt | Sofort | Ende des Zeitraums |
| Beleg-Endpunkt | Sandbox-URL | Produktions-URL |
| Nur Testkonten | Ja | Nein |
Zusätzliche Ressourcen
Section titled “Zusätzliche Ressourcen”Weitere Details finden Sie in der offiziellen Apple StoreKit-Dokumentation zu Sandbox-Tests.