Zum Inhalt springen

Configure iOS Sandbox-Testen

GitHub

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.

  • 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
  1. 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).

  2. 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

    Sandbox-Tester erstellen

  3. 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:

    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 Signierung und Fähigkeiten
    3. Klicken Sie + Fähigkeit
    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 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]

    Dieser Bestätigungsprozess zeigt an, dass Sie sich im Sandbox-Umgebung befinden und keine echten Gelder berechnet werden.

  • 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
  • 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
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 es richtig konfigurieren, 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 werden validiert richtig
  5. Abonnements erneuern 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 „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
  1. Erstellen Sie mehrere Testkonten für verschiedene Testanwendungsfälle
  2. Testen Sie alle Abonnementdauern um das Verhalten zu überprüfen
  3. Testen Sie die Abbruch- und Wiederholungsströme Überprüfen Sie die Empfangsvalidierung
  4. funktioniert richtig Testen Sie die Wiederherstellung von Kaufleistungen
  5. Funktion Überprüfen Sie die Abonnementauf- und -abbau
  6. Überprüfen Sie die Funktion der Abonnementauf- und -abbau Verhalten
  7. Mit schlechten Netzwerkbedingungen testen
FunktionSandboxProduktion
Echte GebührenNeinJa
Laufzeit der AbonnementBeschleunigtNormal
Automatischer Abonnementstopp6 MalUnbegrenzt
StornoeffektSofortigAblaufdatum
Beleg-EndpunktSandbox-URLProduktions-URL
Nur TestkontenJaNein

Für weitere Details, beziehen Sie sich auf die offizielle Apple StoreKit-Dokumentation auf Sandbox-Testungen.

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.