Zum Inhalt springen

Fortsetzung von Konfigurieren Sie iOS-Sandbox-Testen

GitHub

Um In-App-Käufe auf iOS zu testen, 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: Aktive Mitgliedschaft mit jährlicher Erneuerung
  • Zustimmungen: Unterzeichnete “Zahlungspflichtige Anwendungen-Zustimmung” mit Bank- und Steuerinformationen abgeschlossen
  • Xcode-Projekt: Konfiguriert mit dem richtigen Bundle-Identifier und -Fähigkeiten
  1. Zahlungspflichtige Anwendungen vereinbaren

    In App Store Connect navigieren Sie zu Abkommen, Steuern und Bankgeschäfte und fahren Sie fort:

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

    Warten Sie auf die Genehmigung von 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 Testung konfigurieren (iOS 12+)

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

    Auf deinem 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 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
    4. Hinzufügen In-App-Kauf
  5. Erstellen Sie In-App-Kaufprodukte

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

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

  6. Ihre Implementierung testen

    Bauen und auf einem Testgerät ausführen Sie Ihre App. 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
  • Geschwindigkeitsverstärkte Abonnements: Die Abonnementdauern werden für schnellere Tests verkürzt
    • 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 bis zu 6 Mal im Sandbox-Modus
  • Sofortige Kündigung: Abgelaufene Abonnements erlöschen sofort

Sandbox-Konto-Verwaltung

Abschnitt "Sandbox-Konto-Verwaltung"
  • Mehrere Testkonten für verschiedene Szenarien erstellen
  • Testkonten nur auf Testgeräten verwenden
  • Verwende nicht deinen persönlichen Apple-Kundenkonto für Sandbox-Tests
  • Testkonten können Produkte beliebig 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 eingerichtet haben, sollten Sie Folgendes beobachten:

  1. Sandbox-Banner während des Kaufs: „[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 kein echter Apple-ID ist
  • Versuchen Sie, ein neues Sandbox-Testkonto zu erstellen

Fehler bei der Bezahlungsbestätigung:

  • Verwenden Sie in der Testphase den Sandbox-Bezahlungsbestätigungs-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-Konto wurde noch nicht im iTunes Store verwendet’:

  • Dies ist normal für neue Sandbox-Konten
  • Mit der Kaufabwicklung aktivieren Sie das Konto
  • Erstes Mal nur
  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 Stornierung und die Wiederholung der Abläufe
  4. Überprüfen Sie die Empfangsbestätigung funktioniert richtig
  5. Kaufwiederherstellungstests Funktionalität
  6. Abonnementauf- und -abbau überprüfen Verhalten
  7. Mit schlechten Netzwerkbedingungen testen

Produktion vs. Sandbox

Funktion
SandboxProduktionEchte Gebühren
NeinProduktion gegenüber SandboxJa
AbonnementdauerGeschwindigkeitsverstärkterNormal
Automatische Erneuerungsgrenze6 MalUnbegrenzt
KündigungsfolgeSofortAblaufdatum
Bezahlschein-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 @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 @capgo/capacitor-native-market und Mit @capgo/capacitor-native-market zur nativen Fähigkeit in Mit @capgo/capacitor-native-market.