Zum Inhalt springen

Configure iOS Sandbox-Testen

GitHub

Für die Testung 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 für die Durchführung von Sandbox-Tests benötigen.

Voraussetzungen

Voraussetzungen
  • Apple Developer Program: Aktives Mitglied mit jährlicher Erneuerung
  • Zustimmungen: Unterzeichnetes "Paid Applications Agreement" mit abgeschlossenen Banking- und Steuerinformationen
  • Xcode-Projekt: Konfiguriert mit korrektem Bundle-Identifier und -Fähigkeiten

Einrichtungsprozess

Voraussetzungen
  1. Zahlungspflichtige Anwendungsvereinbarung unterzeichnen

    In App Store Connect navigieren Sie zu Zustimmungen, Steuern und Bankverbindungen und abschließen:

    • Die Zahlungspflichtige Anwendungsvereinbarung unterzeichnen
    • Ihre Bankverbindung hinzufügen
    • Steuereinzugsformulare ausfüllen

    Warten Sie auf die Genehmigung durch Apple (dies kann bis zu 48 Stunden dauern).

  2. Sandbox-Testnutzer erstellen

    In App Store Connect gehen Sie zu Benutzer und Zugriff > Sandbox-Testnutzer.

    Auf ' + Button zum Erstellen eines neuen Sandbox-Testers.

    Wichtig: Verwende eine E-Mail-Adresse, die NICHT bereits mit einem Apple-Konto verbunden ist. Du kannst E-Mail-Aliase verwenden:

    • Gmail: youremail+test@gmail.com
    • iCloud: youremail+test@icloud.com

    Sandbox-Tester erstellen

  3. Gerät für die Testkonfiguration (iOS 12+)

    Ab iOS 12 benötigst du nicht mehr, dich von deinem iTunes-Konto abzumelden, um Kauftests durchzuführen.

    Auf deinem iOS-Gerät:

    1. Öffne Einstellungen
    2. Tippe App Store
    3. Zum Ende scrollen
    4. Tippen Sandbox-Konto
    5. Mit Ihrem Sandbox-Testkonto anmelden
  4. Xcode-Projekt konfigurieren

    Stellen Sie sicher, dass Ihr Xcode-Projekt folgende Eigenschaften hat:

    Bundle-Identifier

    • Muss dem Identifikator im Developer Center entsprechen
    • Muss dem Identifikator in App Store Connect entsprechen

    In-App-Kauffunktion

    1. Wählen Sie Ihr Projekt in Xcode
    2. Zum Zertifizierung und Funktionen
    3. Klicken Sie auf + Funktion
    4. Hinzufügen In-App-Kauf
  5. 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 Hochladen“ sein, um Sandbox-Tests durchzuführen.

  6. Ihre Implementierung testen

    Bauen und auf einem Testgerät ausführen Sie Ihre App. Wenn Sie einen Kaufversuch durchführen, sollten Sie sehen:

    [Umgebung: Sandbox]

    Diese Bestätigung zeigt an, dass Sie sich im Sandbox-Modus befinden und keine echten Gelder berechnet werden.

  • Keine realen Gebühren: Alle Kaufs sind in Sandbox-Modus kostenlos
  • Geschwindigkeitsbeschleunigte 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-Monats-Abonnement = 15 Minuten
    • 6-Monats-Abonnement = 30 Minuten
    • 1-Jahres-Abonnement = 1 Stunde
  • Automatische Erneuerungsgrenze: Abonnements erneuern sich automatisch bis zu 6 Mal im Sandbox-Modus
  • Unmittelbare Kündigung: Abgelaufene Abonnements erlöschen sofort
  • Mehrere Testkonten für verschiedene Szenarien erstellen
  • Nur auf Testgeräten Testkonten verwenden
  • Für das Sandbox-Testen keine persönliche Apple-ID verwenden
  • Testkonten können Produkte in jedem Land kaufen, unabhängig von der Region
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 purchase
const transaction = await NativePurchases.purchaseProduct({
productIdentifier: 'premium_monthly',
productType: PURCHASE_TYPE.SUBS,
});
console.log('Test purchase successful!', transaction.transactionId);

Wenn Sie richtig konfiguriert haben, sollten Sie Folgendes beobachten:

  1. Sandbox-Banner bei Kauf: „[Umgebung: Sandbox]“
  2. Produkte laden erfolgreich
  3. Käufe sind ohne tatsächliche Gebühren abgeschlossen
  4. Rechnungen werden korrekt validiert
  5. Abonnements automatisch (bei beschleunigter Rate) erneuert

Produkte laden nicht:

  • Überprüfe die App-Identifikationsnummer auf App Store Connect
  • Überprüfen Sie, ob Vereinbarungen unterzeichnet und genehmigt wurden
  • Stellen Sie sicher, dass Produkte mindestens im Status „Zur Übermittlung bereit“ sind
  • Warten Sie 2-3 Stunden nach der Erstellung von Produkten

„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
  • Neustarten Sie die App

Käufe schweigen still:

  • Überprüfen Sie die Xcode-Konsole 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 Empfangsvalidierung:

  • Verwenden Sie in der Testphase den Sandbox-Empfangsvalidierungs-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-ID-Konto wurde noch nicht im iTunes Store verwendet“:

  • Dies ist normal für neue Sandbox-Konten
  • Klicken Sie auf den Kaufabschluss, um das Konto zu aktivieren
  • Geschieht nur bei der ersten Verwendung
  1. Erstellen Sie mehrere Testkonten für verschiedene Testfälle
  2. Testen Sie alle Abonnementdauern um das Verhalten zu überprüfen
  3. Testen Sie die Abbestellungs- und Wiederholungsabläufe Testen Sie die Eingangsbestätigung
  4. funktioniert richtig funktioniert richtig
  5. Test Restore-Käufe Funktionalität
  6. Abonnement-Auf- oder Abstufung überprüfen Verhalten
  7. Test unter schlechten Netzwerkbedingungen
FunktionSandboxProduktion
Echte GebührenNeinJa
AbonnementdauerGeschwindigkeitsverstärkungNormal
Automatischer Wiederholungsbeschränkung6 MalUnbegrenzt
KündigungsfolgeSofortigAblaufdatum
EinzugsstelleSandbox-URLProdukt-URL
Nur TestkontenJaNein

Weitere Informationen finden Sie im offiziellen Apple StoreKit-Dokumentation auf dem Sandbox-Test.

Wenn Sie Cloudflare verwenden iOS-Sandbox-Testkonfiguration um die Genehmigung und Verteilung im App Store zu planen, verbinden Sie es mit Mit @capgo/native-purchases für die native Fähigkeit in Mit @capgo/native-purchases, @capgo/capacitor-In-App-Bewertung für die Implementierungsdetail in @capgo/capacitor-In-App-Bewertung, Mit @capgo/capacitor-In-App-Bewertung für die native Fähigkeit in Mit @capgo/capacitor-In-App-Bewertung, @capgo/capacitor-Native-Markt für die Implementierungsdetail in @capgo/capacitor-Native-Markt, und Mit @capgo/capacitor-Native-Markt für die native Fähigkeit in Mit @capgo/capacitor-Native-Markt.