Zum Inhalt springen

Konfiguration des iOS-Sandbox-Tests

GitHub

Für die 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 dem Sandbox-Testen benötigen.

  • Apple Developer-Programm: Aktives Mitgliedschaft mit jährlicher Rennovierung
  • Zustimmungen: Unterzeichnete „Zahlungsberechtigungenvereinbarung“ mit Bank- und Steuerinformationen abgeschlossen
  • Xcode-Projekt: Konfiguriert mit korrektem Bundle-Identifier und -Fähigkeiten
  1. Zahlungspflichtige Anwendungen vereinbaren

    In App Store Connect navigieren Sie zu Abkommen, Steuern und Bankverbindungen und fahren Sie fort:

    • Zahlungspflichtige Anwendungen vereinbaren
    • Fügen Sie Ihre Bankverbindung hinzu
    • Füllen Sie Steuerformulare aus

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

  2. Sandbox-Testnutzer erstellen

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

    Klicken Sie auf + Button zum Erstellen eines neuen Sandbox-Testers.

    WichtigVerwende 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 aus deinem iTunes-Konto auszuloggen, um Kauftests durchzuführen.

    Auf deinem iOS-Gerät:

    1. Öffnen Einstellungen
    2. Tippen App Store
    3. Zu unten 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 der 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 Sie + Funktion hinzufügen
    4. Hinzufügen In-App-Kauf
  5. In-App-Kaufprodukte erstellen

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

    Produkte müssen mindestens im Status „Zur Veröffentlichung bereit“ sein, um Sandbox-Tests durchzuführen.

  6. Ihre Implementierung testen

    Bauen und auf einem Testgerät ausführen. Wenn Sie eine Kaufanfrage stellen, 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 Kaufanfragen sind in Sandbox-Modus kostenlos
  • Geschwindigkeitsbeschleunigte Abonnements: Die Abonnementdauern werden für schnellere Tests verkürzt
    • 1-wöchige Abonnement = 3 Minuten
    • 1-monatiges Abonnement = 5 Minuten
    • 2-monatiges Abonnement = 10 Minuten
    • 3-monatiges Abonnement = 15 Minuten
    • 6-monatiges Abonnement = 30 Minuten
    • 1-jähriges Abonnement = 1 Stunde
  • Automatische Erneuerungsgrenze: Abonnements erneuern sich bis zu 6 Mal im Sandbox-Modus
  • Sofortige Kündigung: Abonnement wird sofort gekündigt
  • Erstellen Sie mehrere Testkonten für verschiedene Szenarien
  • Nutzten Sie Testkonten nur auf Testgeräten
  • Verwenden Sie nicht Ihren persönlichen Apple-Konto für Sandbox-Tests
  • Testkonten können Produkte jeder Region 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 alles richtig konfiguriert haben, sollten Sie Folgendes beobachten:

  1. Sandbox-Banner bei der Kaufabwicklung: „[Umgebung: Sandbox]“
  2. Produkte laden erfolgreich
  3. Käufe abgeschlossen ohne tatsächliche Gebühren
  4. Quittungen überprüfen richtig
  5. Abonnements automatisch erneuern (bei beschleunigter Geschwindigkeit)

Produkte laden:

  • Überprüfen Sie, ob die Bundle-Identifikationsnummer mit App Store Connect übereinstimmt
  • Ü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 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
  • Neustarten Sie die App

Käufe scheitern stillschweigend:

  • Ü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 keine echte Apple-ID ist
  • Versuchen Sie, ein neues Sandbox-Testkonto zu erstellen

Fehler bei der Rechnungsvalidierung:

  • Verwenden Sie in der Testphase die Sandbox-Rechnungsvalidierungs-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 erwarteten Dauern
  • Abonnements werden im Sandbox-Modus höchstens 6 Mal automatisch erneuert

„Dieses Apple-ID-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. Mehrere Testkonten erstellen zur Untersuchung verschiedener Szenarien
  2. Alle Abonnementdauern testen um das Verhalten zu überprüfen
  3. Kündigungs- und Erneuerungsabläufe Testen Sie die Verifizierung von Einkäufen
  4. fungiert richtig __CAPGO_KEEP_0__
  5. Kaufwiederherstellungstests Funktionalität
  6. Überprüfen Sie die Upgrade-/Downgradenutzung Verhalten
  7. Testen Sie unter schlechten Netzwerkbedingungen

Produktion vs. Sandbox

Funktion
SandboxProduktionEchte Gebühren
NeinProduktion gegen SandboxJa
AbonnementdauerGeschwindigkeitsverstärkungNormal
Automatische Verlängerungsgrenze6 MalUnbegrenzt
KündigungsfolgeSofortAblaufdatum
Beleg-EndpunktSandbox-URLProdukt-URL
Nur TestkontenJaNein

Weitere Informationen finden Sie in der offiziellen Apple StoreKit-Dokumentation zu Sandbox-Tests.

Wenn Sie Capacitor verwenden iOS Sandbox-Testkonfiguration um die Genehmigung und Verteilung im App Store zu planen, verbinden Sie es mit Mit @capgo/native-purchases zur nativen Fähigkeit in Mit @capgo/native-purchases, Mit @capgo/capacitor-in-app-review zur Implementierungsdetails in Mit @capgo/capacitor-in-app-review, Mit @capgo/capacitor-in-app-review zur nativen Fähigkeit in Mit @capgo/capacitor-in-app-review, Mit @capgo/capacitor-native-market zur Implementierungsdetails in Mit @capgo/capacitor-native-market, und Mit @capgo/capacitor-native-market zur nativen Fähigkeit in Mit @capgo/capacitor-native-market.