Ihre App erstellen und testen
Erfahren Sie, wie Sie Ihre App mit einem DevKit erstellen und testen.
Verwenden Sie Ihr SmartPOS DevKit-Gerät, um Ihre Anwendung zu testen und zu überarbeiten, ohne den Prozess der Bereitstellung, App-Überprüfung oder Unterzeichnung durchlaufen zu müssen.
Wenn Sie ein DevKit-Gerät benötigen, können Sie bis zu fünf pro Nutzer/in im Abschnitt Lesegeräte in Ihrem Dashboard bestellen.
DevKit einrichten
Bevor Sie Ihr DevKit für die App-Entwicklung verwenden können, müssen Sie Folgendes tun:
- Befolgen Sie die Anweisungen auf dem Bildschirm, um eine Verbindung zu einem Netzwerk herzustellen.
- Registrieren Sie das Gerät in Ihrem Stripe-Konto.
- Installieren Sie alle verfügbaren Updates.
Nach der Ersteinrichtung können Sie Ihr DevKit jederzeit bei einem anderen Konto oder Standort registrieren. Verbinden Sie hierfür das DevKit mit dem Internet und befolgen Sie die Schritte zum Registrieren eines Lesegeräts.
DevKit-Geräte ähneln zwar Produktionsgeräten, aber:
- Sie können nur im Test-Modus betrieben werden.
- Sie werden mit standardmäßig aktivierten Entwickleroptionen und Android Debug Bridge (
adb
) versandt. - Auf dem Bildschirm wird ein Wasserzeichen angezeigt, um darauf hinzuweisen, dass das Gerät nur zu Testzwecken verwendet wird. Das Wasserzeichen bewegt sich während der Nutzung des Geräts auf dem Bildschirm, sodass Sie alle Teile des Bildschirms sehen können.
Die Terminal API unterstützt das Targeting registrierter DevKit-Geräte.
Ihre App für Stripe-Geräte entwickeln
Führen Sie die folgenden Schritte aus, um Ihre App für Stripe-Android-Geräte zu entwickeln, einschließlich der Einrichtung der App und der Übergabe an die Stripe Reader-App.
App erstellenClientseitig
Befolgen Sie die nachstehenden Anweisungen für Integrationen des Typ „Apps auf Geräten“.
Lesegerät erkennen und verbinden
Einzug von Zahlungen
Nachdem Sie über den Handoff-Modus eine Verbindung zum Lesegerät hergestellt haben, können Sie mit dem Einziehen von Zahlungen beginnen.
Die Stripe Lesegerät übernimmt den Zahlungseinzug und andere Zahlungsvorgänge, zum Beispiel das Speichern einer Karte. Wenn Sie einen Zahlungsvorgang einleiten, wird die Stripe Reader-App zur primären App und startet im Vollbildmodus. Anschließend führt die Stripe Reader-App die Kundin/den Kunden durch den Ablauf und übergibt nach Abschluss (erfolgreich oder fehlgeschlagen) oder Stornierung durch die Kundin/den Kunden die Kontrolle an Ihre App zurück. Wenn die Kontrolle an Ihre App zurückgegeben wird, wird die Stripe Reader-App weiterhin im Hintergrund ausgeführt.
Hier finden Sie ein Beispiel für den Einzug von Zahlungen in einer App des Typs „Apps auf Geräten“.
Zahlungen offline einziehenBeta
„Apps auf Geräten“ unterstützt den Zahlungseinzug im Offline-Modus.
GeräteverwaltungClientseitig
Sie können auf die Administratoreinstellungen des Geräts zugreifen, indem Sie den Deep-Link-URI stripe://settings/
aus Ihrer App starten.
Hier finden Sie ein Beispiel für den Aufruf des Deep-Link-URI für die Admin-Einstellungen.
Die App instrumentierenClientseitig
Stripe bietet keine Lösung zur Instrumentierung auf Anwendungsebene. Um Abstürze und andere Logs Ihrer Anwendung zu verfolgen, können Sie eine Bibliothek eines Drittanbieters wie Sentry und Crashlytics verwenden.
Gebietsschema des Geräts festlegenClientseitig
Der von Locale.getDefault() zurückgegebene Wert wird von der Sprachauswahl des Nutzers/der Nutzerin bestimmt. Sie können die Gerätesprache in den Admin-Einstellungen ändern.
Ausrichtung des BildschirmsClientseitig
Auf Stripe Android-Geräten ist die Einstellung zum automatischen Drehen des Bildschirms standardmäßig aktiviert. Ihre App kann diese Einstellung außer Kraft setzen, indem die Nutzeroberfläche bei einer bestimmten Bildschirmausrichtung gesperrt wird.
Dies kann durch Festlegen des Attributs screenOrientation für die entsprechenden <activity>
-Tags im Manifest erreicht werden.
<activity android:name=".MainActivity" android:screenOrientation="portrait"> </activity>
Alternativ kann dies programmgestützt mittels Activity::setRequestedOrientation in Ihrer Activity
-Klasse festgelegt werden.
EinschränkungenClientseitig
Android-Geräte von Stripe verfügen nicht über eine System-Nutzeroberfläche, einschließlich einer Zurück-Schaltfläche oder einer Statusleiste.
Wenn Ihre App den Nutzer/innen Akkustand, Ladezustand und Verbindungsstatus mitteilen muss, finden Sie Informationen dazu in der folgenden Android API-Dokumentation:
Funktionsweise mit GerätezubehörClientseitig
Wenn das Stripe-Lesegerät eine Verbindung zu einer Dockingstation herstellt oder trennt, löst das Android-Betriebssystem eine Konfigurationsänderung aus.
Standardmäßig wird die Aktivität Ihrer App bei einer Konfigurationsänderung automatisch neu erstellt.
Um die automatische Aktivitätswiederherstellung beim Herstellen oder Trennen einer Verbindung mit einer Dockingstation zu deaktivieren, fügen Sie android:configChanges="uiMode"
im Eintrag <activity>
in Ihrer Datei AndroidManifest.
hinzu.
<activity android:name=".MyActivity" android:configChanges="uiMode" />
Ihre Aktivität kann über Konfigurationsänderungen informiert werden, indem Sie Activity::onConfigurationChanged implementieren. Diese Methode wird nur aufgerufen, wenn Sie Konfigurationen angegeben haben, die Sie mit dem Attribut android:configChanges
in Ihrem Manifest behandeln möchten.
class MainActivity : Activity() { override fun onConfigurationChanged(newConfig: Configuration) { super.onConfigurationChanged(newConfig) // implement custom configuration change handling logic } }
Ihre App testen
Verwenden Sie Ihr S700 DevKit-Gerät, um Ihre App im Stripe-Dashboard oder mit der Android Debug Bridge (adb
) zu testen.
Testzahlungen
DevKit-Geräte können Testzahlungen mit einer phyischen Stripe-Testkarte verarbeiten, die Sie im Dashboard bestellen können. Beim Testen von Zahlungen können Sie Dezimalbeträge verwenden, um bestimmte Ergebnisse zu erzielen.
Achtung
Verwenden Sie keine echten Karten für Testzahlungen auf DevKit-Geräten.