Troubleshoot apps on devices
Learn how to resolve known issues with apps on devices.
Warum wird meine App nicht auf Stripe hochgeladen?
Wenn Ihre APK-Datei zu groß ist oder Ihre Upload-Internetgeschwindigkeit zu langsam ist, erhalten Sie möglicherweise einen Timeout-Fehler, wenn Sie Ihre APK-Datei mit der Files API hochladen. Stripe erzwingt auf seinen Servern eine Zeitüberschreitung von 45 Sekunden und gibt einen Fehler aus, wenn eine App nicht innerhalb dieser Zeit hochgeladen wird. Um das Problem zu beheben, laden Sie Ihre APK-Datei auf einen Server mit besserer Internetverbindung hoch (zum Beispiel eine AWS EC2-Instanz oder einen anderen VPS) und laden Sie sie dann von dort aus auf Stripe hoch. Die Netzwerkverbindung zwischen Ihrem Server und den Servern von Stripe ist in der Regel viel schneller ist als die Heim- oder Büroverbindungen zu Stripe über einen ISP.
Muss ich meine im Testmodus genehmigte App erneut zur Genehmigung im Live-Modus übermitteln?
Wenn Sie die Genehmigung für Ihre App im Test-Modus erhalten haben und die App im Live-Modus verwenden möchten, müssen Sie sie erneut zur Genehmigung einreichen. Der App-Überprüfungsprozess ist sowohl für den Test-Modus als auch für den Live-Modus gleich. Achten Sie darauf, dass Sie für die automatische Genehmigung genau dieselbe APK hochladen.
Warum kann ich von meiner App aus nicht auf den Bildschirm für die Geräteadministration zugreifen?
Standardmäßig kann der/die Nutzer/in des Geräts auf die Admin-Einstellungen zugreifen, indem er vom linken Bildschirmrand wischt und auf Einstellungen tippt. Diese Methode funktioniert nicht, wenn eine Drittanbieter-App die Standard-Start-App ist. Sie können den URI
stripe://settings/
verwenden, um einen Deep-Link zu den Admin-Einstellungen herzustellen und den URI dann von Ihrer App aus mit dem folgenden Code in Ihrer Aktivität oder Ihrem Fragment zu starten:Warum kann ich die Gerätesprache in meinem DevKit nicht aktualisieren?
Die Lesegerät-App im DevKit kann die Gerätesprache derzeit nicht aktualisieren. Sie können die Gerätesprache über die Android-Einstellungs-App ändern. Verwenden Sie
adb
, um die Android-Einstellungs-App zu starten:$ adb shell am start -a android.settings.SETTINGS
Warum kann ich die Android-Einstellungen auf Stripe-Geräten nicht starten oder keinen Deep-Link herstellen?
Aus Sicherheits- und Zuverlässigkeitsgründen blockiert Stripe die Android-Einstellungs-App auf Stripe-Produktionsgeräten.
Kann ich mehrere Apps auf meinem Stripe Reader S700 ausführen?
Der Stripe Reader S700 unterstützt die Ausführung mehrerer Apps, aber wir bieten keinen App-Launcher. Sie müssen die Funktionalität in Ihren Apps erstellen, um zwischen Apps wechseln zu können. Wenn Sie Ihre Apps bereitstellen, können Sie die
default_
angeben, die gestartet wird, wenn das Gerät nach Updates. Dies ist die App, die bei der Suche des Geräts nach Updates und nach Zahlungen gestartet wird. Sie können das Dashboard nicht verwenden, um mehrere Apps auf einem Gerät zu konfigurieren.kiosk_ application Kann ich eine Web-App auf meinen Stripe-Geräten bereitstellen?
Sie können Ihre Web-App so packen, dass sie auf Ihren Stripe-Geräten ausgeführt wird. Verwenden Sie ein Framework wie Cordova, um Ihre Web-App für die Kompatibilität mit Android zu modifizieren und ein Android-Anwendungspaket (APK) zu generieren. Sie können dann das APK in Ihrem Stripe-Dashboard hochladen.
Frameworks erkennen weder Stripe noch das Android Terminal SDK, so dass Sie eine JavaScript-Bridge zwischen Ihrer Webanwendung und dem SDK erstellen müssen, um Befehle über JavaScript zu senden.
Alternativ können Sie die servergesteuerte Integration verwenden, um Zahlungen einzuziehen, ohne die Terminalübergabe-Clientbibliothek oder eine JavaScript-Brücke verwenden zu müssen. Dadurch kann Stripe alle Zahlungseingangsbefehle und die Kommunikation mit dem Gerät abwickeln.
Warum wird meine App ständig neu gestartet?
Im Falle eines Absturzes starten die Stripe Terminal-Kartenlesegeräe die Standard-App neu. Dies manifestiert sich für Produktions- und DevKit-Geräte unterschiedlich:
Produktion – Wenn Sie Ihre App als Standard-App auf Produktionsgeräten konfigurieren, wird die App bei einem Absturz automatisch neu gestartet. Wenn die App während der Initialisierung abstürzt (zum Beispiel bei einer fehlenden oder defekten Datenbankmigration), kann das Gerät in eine Absturzschleife gelangen.
DevKit – Wenn Sie die Stripe-Zahlungs-App als Standard-App auf DevKit-Geräten konfigurieren, wird Ihre App auf dem Gerät in die Warteschlange gestellt und dann zur primären App. Wenn die App abstürzt, wird stattdessen die Stripe-Zahlungs-App neu gestartet.
Warum stürzt meine App ab, wenn Zahlungen mit einer großen Anzahl von Einzelposten verarbeitet werden?
Wenn Ihre App abstürzt, während Sie versuchen, eine Zahlung mit einer großen Anzahl von Einzelposten zu verarbeiten, liegt das Problem möglicherweise beim Arbeitsspeicher. Das Android-Betriebssystem begrenzt die pro Interprozess (IPC) gesendeten Daten auf 500 KB, wenn der Status für Ihre Aktivität gespeichert wird. Um zu verhindern, dass Ihre App abstürzt, können Sie Ihre Daten außerhalb des Arbeitsspeichers speichern, zum Beispiel in einer Datenbank.
Was passiert, wenn ich einen Fehler in einer bereitgestellten App finde?
Wenn Sie einen Fehler in einer bereits bereitgestellten App entdecken, können Sie das Problem in der App beheben, eine neue Version hochladen und dann Ihre App bereitstellen.
Wie kann ich die Logs für meine App auf Produktionslesegeräten anzeigen?
Stripe zeigt keine Protokolle auf Produktionslesegeräten an. Für die Beoabachtbarkeit stützen wir uns auf Sentry-Integrationen.
Ich habe meine Point-of-Sale-App auf ein DevKit geladen und eine Zahlungstransaktion erfolgreich abgeschlossen. Warum startet meine Point-of-Sale-App nicht, nachdem die Transaktion abgeschlossen ist?
Bei Stripe-Lesegeräten, die für Apps auf Geräten konfiguriert sind, wird die bevorzugte Kiosk-App nach Abschluss einer Transaktion gestartet. In einem DevKit wird die bevorzugte Kiosk-App des Geräts nur festgelegt, wenn Sie das Gerät in eine Bereitstellungsgruppe aufnehmen.
Um die bevorzugte Kiosk-App auf einem DevKit-Gerät festzulegen:
- Senden Sie Ihre App an eine reine DevKit-Bereitstellungsgruppe. So können Sie die App-Bewertung überspringen.
- Stellen Sie die App-Version in einer Bereitstellungsgruppe bereit, die auf Ihr DevKit abzielt.