Troubleshoot apps on devices
Learn how to resolve known issues with apps on devices.
Pourquoi je ne parviens pas à charger mon application sur Stripe ?
Si votre fichier APK est trop volumineux ou si votre vitesse de téléchargement est trop lente, il se peut que vous receviez une erreur d’expiration du délai d’attente lorsque vous chargez votre fichier APK à l’aide de l’API Files. Stripe applique un délai de 45 secondes sur ses serveurs et génère une erreur si l’application n’a pas été chargée dans ce laps de temps. Pour résoudre ce problème, chargez votre fichier APK sur un serveur disposant d’une meilleure connexion internet (par exemple, une instance AWS EC2 ou un autre VPS) et chargez-la ensuite vers Stripe. La connexion réseau entre votre serveur et les serveurs Stripe est généralement beaucoup plus rapide que les connexions à Stripe à la maison ou au bureau via un FAI.
Dois-je soumettre à nouveau mon application approuvée en mode test pour qu’elle soit approuvée en mode production ?
Si vous avez obtenu l’approbation de votre application en mode test et que vous souhaitez l’utiliser en mode production, vous devez la soumettre à nouveau pour approbation. Le processus d’examen des applications est identique pour le mode test et le mode production. Veillez à charger exactement le même fichier APK pour que l’approbation soit automatique.
Pourquoi ne puis-je pas accéder à l’écran des paramètres d’administration de l’appareil à partir de mon application ?
Par défaut, l’utilisateur de l’appareil peut accéder aux paramètres d’administration en faisant glisser depuis le bord gauche de l’écran et en appuyant sur Paramètres. Cette méthode ne fonctionne pas lorsque l’application de lancement par défaut est une application tierce. Vous pouvez utiliser l’URI
stripe://settings/
pour ajouter un lien profond vers les paramètres d’administration, puis lancer l’URI à partir de votre application en utilisant le code suivant dans votre Activité ou votre Fragment :Pourquoi ne puis-je pas mettre à jour la langue de l’appareil sur mon DevKit ?
L’application du lecteur sur le DevKit ne peut actuellement pas modifier la langue de l’appareil. Vous pouvez changer la langue de l’appareil via l’application Paramètres d’Android. Utilisez
adb
pour lancer l’application Paramètres d’Android :$ adb shell am start -a android.settings.SETTINGS
Pourquoi ne puis-je pas lancer ou ajouter un lien profond vers les paramètres Android sur les appareils Stripe ?
Pour des raisons de sécurité et de fiabilité, Stripe bloque l’application Paramètres d’Android sur les appareils Stripe en mode production.
Puis-je utiliser plusieurs applications sur mon lecteur Stripe S700 ?
Le lecteur Stripe S700 permet l’exécution de plusieurs applications, mais nous ne fournissons pas de lanceur d’applications. Vous devez intégrer les fonctionnalités dans vos applications pour passer d’une application à l’autre. Lorsque vous déployez vos applications, vous pouvez spécifier la
default_
, qui est l’application qui se lance par défaut lorsque l’appareil recherche des mises à jour et après les paiements. Vous ne pouvez pas utiliser le Dashboard pour configurer plusieurs applications sur un appareil.kiosk_ application Puis-je déployer une application Web sur mes appareils Stripe ?
Vous pouvez packager votre application Web pour qu’elle s’exécute sur vos appareils Stripe. Utilisez un framework, tel que Cordova, pour modifier votre application Web afin qu’elle soit compatible avec Android et générer un package d’application Android (APK). Vous pouvez ensuite charger l’APK dans votre Dashboard Stripe.
Les frameworks ne reconnaissent pas Stripe ou le SDK Android Terminal, vous devez donc créer un pont JavaScript entre votre application Web et le SDK pour envoyer des commandes à partir de JavaScript.
Vous pouvez également utiliser l’intégration pilotée par serveur pour encaisser les paiements, sans avoir à utiliser la bibliothèque client Terminal ou un pont JavaScript. Cela permet à Stripe de gérer toutes les commandes d’encaissement des paiements et la communication avec l’appareil.
Pourquoi mon application redémarre-t-elle constamment ?
Les lecteurs de cartes Stripe Terminal redémarrent l’application par défaut en cas de plantage. Cela se manifeste différemment sur les appareils de production et les appareils DevKit :
Production : si vous configurez votre application comme application par défaut sur les appareils de production, elle redémarre automatiquement en cas de plantage. Si l’application plante pendant l’initialisation (par exemple, une migration de base de données manquante ou interrompue), l’appareil peut entrer dans une boucle de plantage.
DevKit : si vous configurez l’application de paiement Stripe comme application par défaut sur des appareils DevKit, votre application est placée en file d’attente sur l’appareil et devient alors l’application principale. Si l’application plante, l’application de paiement Stripe redémarre à la place.
Pourquoi mon application plante-t-elle lors du traitement des paiements comportant un grand nombre de postes ?
Si votre application plante lors d’une tentative de traitement d’un paiement comportant un grand nombre de postes, le problème peut venir de la mémoire. Le système d’exploitation Android limite les données envoyées par interprocessus (IPC) à 500 Ko, lors de l’enregistrement de l’état de votre activité. Pour éviter que votre application ne plante, vous pouvez stocker vos données ailleurs que sur la mémoire, par exemple dans une base de données.
Que faire si je détecte un problème dans une application déployée ?
Si vous détectez un problème dans une application déjà déployée, vous pouvez le corriger dans l’application, charger une nouvelle version, puis déployer votre application.
Comment visualiser les logs de mon application sur les lecteurs de production ?
Stripe ne met pas à disposition pas les logs sur les lecteurs de production. Nous nous appuyons sur les intégrations Sentry à des fins de surveillance.
J’ai transféré mon application de point de vente sur un DevKit et j’ai effectué une transaction de paiement. Pourquoi mon application de point de vente ne démarre-t-elle pas une fois la transaction terminée ?
Sur les lecteurs Stripe configurés pour Apps on Devices, l’application kiosque à utiliser démarre une fois la transaction terminée. Sur un DevKit, l’application kiosque du périphérique n’est définie que lorsque vous incluez le périphérique dans un groupe de déploiement.
Pour définir l’application kiosque à utiliser sur un appareil DevKit :
- Soumettez uniquement votre application à un groupe de déploiement DevKit. Cela vous permet d’ignorer l’examen de l’application.
- Déployez la version de l’application dans un groupe de déploiement qui cible votre DevKit.