Zum Inhalt springen

Konfigurieren von iOS-Sandbox-Tests

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.

  • Apple-Entwicklerprogramm: Aktive Mitgliedschaft mit jährlicher Erneuerung
  • : Unterzeichnetes „Zahlungspflichtiges Anwendungsabkommen“ mit Bank- und Steuerinformationen abgeschlossenAgreements
  • Xcode Projekt: Mit dem richtigen Bundle-Bezeichner und -Fähigkeiten konfiguriert
  1. Zustimmung zum Bezahlten Anwendungsabkommen unterzeichnen

    In App Store Connect navigieren Sie zu Zustimmungen, Steuern und Bankverbindungen und füllen Sie aus:

    • Das Bezahlte Anwendungsabkommen unterzeichnen
    • Ihre Bankverbindung hinzufügen
    • Steuererklärungen ausfüllen

    Warten Sie auf die Genehmigung durch Apple (dies kann 24-48 Stunden dauern).

  2. Sandbox-Testnutzer erstellen

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

    Klicken Sie auf den + Schaltfläche, 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

    Sandbox-Testumgebung erstellen

  3. Testgerät konfigurieren (iOS 12+)

    Ab iOS 12 benötigen Sie nicht mehr, sich von Ihrem iTunes-Konto abzumelden, um Kauftests durchzuführen.

    Auf Ihrem iOS-Gerät:

    1. Öffnen Einstellungen
    2. Tippen 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 Anforderungen erfüllt:

    Bundle-Identifier

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

    In-App-Kauffunktion

    1. Wählen Sie Ihr Projekt in Xcode
    2. Gehe zu Zertifizierung und Funktionen
    3. Klicken + Fähigkeit
    4. Hinzufügen In-App-Kauf
  5. In-App-Kaufprodukte erstellen

    Navigieren Sie im App Store Connect zu Ihrer App und erstellen Sie Ihre In-App-Kaufprodukte (Abonnements, Verbrauchsgüter usw.).

    Produkte müssen zumindest im Status „Bereit zum Einreichen“ sein, um Sandbox-Tests durchzuführen.

  6. 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]

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

Wichtige Hinweise

Wichtige Hinweise

Sandbox-Umgebungseigenschaften

Sandbox-Umgebungseigenschaften
  • Keine echten GebührenAlle Kaufle sind in der Sandbox-Modus kostenlos
  • GeschwindigkeitsabonnementsDie Abonnementdauern werden verkürzt, um schneller zu testen
    • 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
  • GebührenbegrenzungSandbox-Abonnements automatisch bis zu 6 Mal erneuern
  • Sofortige KündigungAbgelaufene Abonnements werden sofort gekündigt
  • Verwenden Sie Testkonten nur auf Testgeräten
  • Verwenden Sie keinen persönlichen Apple-ID für Sandbox-Tests
  • Testkonten können Produkte in jedem Land kaufen
  • 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 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 während des Kaufs: “[Umgebung: Sandbox]”
  2. Produkte laden erfolgreich
  3. Käufe abschließen ohne tatsächliche Gebühren
  4. Rechnungen überprüfen richtig
  5. Abonnements erneuern sich automatisch (bei beschleunigter Geschwindigkeit)

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 “Bereit zum Einreichen” 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
  • App neu starten

Käufe scheinen stillschweigend zu fehlerhaft zu sein:

  • Überprüfen Sie die Xcode-Konsole auf Fehlermeldungen
  • Stellen Sie sicher, dass 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 Bezahlungsempfängerechtigung:

  • Verwenden Sie in der Testphase den Sandbox-Bezahlungsempfängerechtigungs-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 beschleunigt werden
  • Verwenden Sie das oben stehende Umrechnungsschema für die erwarteten Dauern
  • Abonnements werden im Sandbox höchstens 6 Mal automatisch erneuert

“This Apple ID has not yet been used in the iTunes Store”:

  • Dies ist normal für neue Sandbox-Konten
  • Fahren Sie mit der Kaufabwicklung fort, um das Konto zu aktivieren
  • Erstes Mal nur
  1. Erstellen Sie mehrere Testkonten für verschiedene Test-Szenarien
  2. Testen Sie alle Abonnementdauern um das Verhalten zu überprüfen
  3. Testen Sie die Stornierung und die Wiederherstellung Flussprüfungen
  4. Überprüfen Sie die Empfangsvalidierung funktioniert richtig
  5. Testen Sie die Wiederherstellung von Kaufleistungen Funktionsprüfungen
  6. Überprüfen Sie die Abonnementauf- und -abstufung Verhaltensprüfungen
  7. Testen Sie unter schlechten Netzwerkbedingungen

Produktion vs. Sandbox

Abschnitt: Produktion vs. Sandbox
FunktionSandboxProduktion
Echte GebührenNeinJa
AbonnementdauerBeschleunigtNormal
Automatischer Erneuerungslimit6 MalUnbegrenzt
StornoeffektSofortAblaufdatum
EinzugsstelleSandbox-URLProduktions-URL
Nur TestkontenJaNein

Weitere Ressourcen

Zusätzliche Ressourcen

Weitere Informationen finden Sie unter der offiziellen Apple StoreKit-Dokumentation zum Sandbox-Testen.