Zum Inhalt springen

Konfiguration der iOS-Sandbox-Testung

GitHub

Die Durchführung von In-App-Käufen auf iOS erfordert eine ordnungsgemäße Konfiguration in App Store Connect und auf Ihren Testgeräten. Diese Anleitung deckt alles ab, was Sie zum Starten des Sandbox-Testens benötigen.

  • Apple-Entwicklerprogramm: Aktive Mitgliedschaft mit jährlicher Erneuerung
  • Zustimmungen: Unterzeichnete „Zahlungspflichtige Anwendungen-Zustimmung“ mit Bank- und Steuerinformationen abgeschlossen
  • Xcode Projekt: Mit richtiger Bundle-Identifizierung und -Fähigkeiten konfiguriert
  1. Zahlungspflichtige Anwendungsvereinbarung unterzeichnen

    In App Store Connect navigieren Sie zu Zustimmungen, Steuern und Bankverbindungen und fahren wie folgt fort:

    • Zustimmen zum Paid-App-Abkommen
    • Fügen Sie Ihre Bankdaten hinzu
    • Erledigen Sie die Steuerformulare

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

  2. Erstellen Sie einen Sandbox-Testbenutzer

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

    Klicken Sie auf + button to create a new sandbox tester.

    WichtigVerwenden Sie eine E-Mail-Adresse, die noch nicht mit einem Apple-Konto verbunden ist. Sie können E-Mail-Aliase verwenden:

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

    Sandbox-Tester erstellen

  3. Testgerät konfigurieren (iOS 12+)

    Ab iOS 12 ist es nicht mehr erforderlich, 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. Konfigurieren Sie das Xcode-Projekt

    Stellen Sie sicher, dass Ihr Xcode-Projekt hat:

    Bundle-Identifier

    • Muss der 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 Fähigkeiten
    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 mindestens im Status 'Zur Veröffentlichung bereit' sein, um Sandbox-Tests durchzuführen.

  6. Testen Sie Ihre Implementierung

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

    [Umgebung: Sandbox]

    Diese Bestätigung zeigt an, dass Sie sich im Sandbox-Umgebung befinden und nicht mit echtem Geld belastet werden.

  • Keine echten Gebühren: Alle Kaufs sind in Sandbox-Modus kostenlos
  • Geschwindere Abonnements: Die 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
  • Automatische Verlängerungsgrenze: Abonnements verlängern sich bis zu 6 Mal im Sandbox-Modus
  • Unmittelbare Kündigung: Abgelaufene Abonnements erlöschen sofort
  • Erstellen Sie mehrere Testkonten für verschiedene Szenarien
  • Verwenden Sie Testkonten nur auf Testgeräten
  • Verwenden Sie keinen persönlichen Apple-Konto für Sandbox-Tests
  • Testkonten können Produkte jeder 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);

When properly configured, you should observe:

  1. Sandbox-Banner während des Kaufs: “[Umwelt: Sandbox]”
  2. Produkte laden erfolgreich
  3. Käufe abschließen ohne tatsächliche Gebühren
  4. Rechnungen überprüfen korrekt
  5. Abonnements erneuern automatisch (bei beschleunigter Geschwindigkeit)

Produkte laden nicht:

  • Überprüfe, ob die Bundle-Id mit App Store Connect übereinstimmt
  • Check that agreements are signed and approved
  • Ensure products are at least “Ready to Submit” status
  • 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
  • Check device is connected to internet
  • Try signing out and back into sandbox account
  • Neustarten Sie die App

Einkäufe werden stillschweigend fehlschlagen:

  • Überprüfe die Xcode-Konsole auf Fehlermeldungen
  • Stellen Sie sicher, dass die In-App-Kauffähigkeit aktiviert ist
  • Stelle sicher, dass die Sandbox-Konto-E-Mail keine echte Apple-ID ist.
  • Versuchen Sie, ein neues Sandbox-Testkonto zu erstellen

Fehler bei der Einkaufsbestätigung:

  • Verwenden Sie den Sandbox-Einkaufsbestätigungs-Endpunkt zum Testen
  • 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 die oben stehende Umrechnungstabelle für die erwarteten Dauern
  • Abonnements werden im Sandbox 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. Alle Abonnementdauern testen um das Verhalten zu überprüfen
  3. Kündigung und Wiederherstellung testen Flüsse testen
  4. Die Empfangsvalidierung überprüfen funktioniert richtig
  5. Die Wiederherstellung von Kaufs testen functionality
  6. Die Abonnement-Auf- und Abstufung überprüfen Verhalten
  7. Mit schlechten Netzwerkbedingungen testen
FunktionSandboxProduction
Echte GebührenNeinJa
AbonnementdauerBeschleunigtNormal
Automatische Verlängerungsgrenze6 MalUnbegrenzt
KündigungsfolgeSofortAblaufdatum
Beleg-EndpunktSandbox-URLProduktions-URL
Nur TestkontenJaNein

Weitere Informationen finden Sie im offiziellen Apple StoreKit-Dokumentation zur Sandbox-Testung.

Wenn Sie Configure iOS Sandbox Testing Konfigurieren Sie die iOS-Sandbox-Testung Verwenden Sie @__CAPGO_KEEP_0__/native-purchases Verwendung von @capgo/native-purchases für die native Fähigkeit in Verwendung von @capgo/native-purchases, @capgo/capacitor-In-App-Bewertung für die Implementierungsdetails 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 Implementierungsdetails in @capgo/capacitor-native-Markt und Mit @capgo/capacitor-native-Markt für die native Fähigkeit in Mit @capgo/capacitor-native-Markt