Résoudre les problèmes liés aux applications sur les appareils
Comment résoudre les problèmes connus liés aux applications sur les appareils.
Votre application ne sera pas importée vers 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.
Nouvelle soumission en mode production d’une application approuvée en environnement de test
Si vous avez obtenu l’approbation pour votre application dans un environnement de test et que vous souhaitez l’utiliser en mode production, vous devez la soumettre à nouveau pour approbation. Le processus d’examen des applications est le même pour les modes de test et de production. Assurez-vous de télécharger exactement le même APK pour l’approbation automatique.
Accès à l’écran des paramètres administrateur de l’appareil depuis votre 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 :Mises à jour de la langue de l’appareil dans votre 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
adbpour lancer l’application Paramètres d’Android :$ adb shell am start -a android.settings.SETTINGSParamètres Android sur les appareils Stripe
Pour des raisons de sécurité et de fiabilité, Stripe bloque l’application Paramètres Android sur les appareils Stripe en production. Par conséquent, il n’est pas possible de lancer l’application Paramètres Android ni d’y accéder via un lien profond depuis un appareil Stripe.
Exécutez plusieurs applications sur le Stripe Reader S700/S710
Le Stripe Reader S700/S710 prend en charge l’exécution de plusieurs applications, mais nous ne fournissons pas de lanceur d’applications. Vous devez intégrer vous-même la fonctionnalité permettant de passer d’une application à l’autre. Lorsque vous déployez vos applications, vous pouvez spécifier la
default_, qui est l’application se lançant lors de la vérification des mises à jour de l’appareil et après les paiements. Vous ne pouvez pas utiliser le Dashboard pour configurer plusieurs applications sur un même appareil.kiosk_ application Déployer une application web sur vos 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 sont pas conscients de l’existence de Stripe ni de l’Android Terminal SDK. Vous devez donc créer un pont JavaScript entre votre application web et le SDK afin d’envoyer des commandes depuis 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.
Redémarrages fréquents de votre application
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.
L’application se ferme lors du traitement d’un paiement comportant un grand nombre de postes
Si votre application se ferme lorsque vous traitez un paiement comprenant un nombre élevé de postes, le problème peut être lié à la mémoire. Le système d’exploitation Android limite à 500 Ko la quantité de données transmises par communication inter-processus (IPC) lors de l’enregistrement de l’état d’une activité. Pour éviter ces interruptions, vous pouvez stocker vos données en dehors de la mémoire volatile, par exemple dans une base de données.
Anomalies dans les applications déployées
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éployez votre application.
Afficher les logs de votre application sur les lecteurs en 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.
Une application de point de vente installée manuellement sur un DevKit ne démarre pas après une transaction de paiement finalisé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 de l’appareil n’est définie que lorsque vous incluez celui-ci dans un groupe de déploiement.
Pour définir l’application kiosque à utiliser sur un appareil DevKit :
- Téléchargez votre application en sélectionnant uniquement les types d’appareils DevKit. Cela vous permet de ne pas vérifier l’application.
- Déployez la version de l’application dans un groupe de déploiement qui cible votre DevKit.