Développer et tester votre application
Apprenez à créer et à tester votre application à l'aide d'un DevKit.
Utilisez votre appareil DevKit SmartPOS pour tester et itérer votre application sans passer par le processus de déploiement, de révision d’application ou de signature.
Si vous avez besoin d’un appareil DevKit, vous pouvez en commander jusqu’à cinq par utilisateur dans la section Lecteurs de votre Dashboard.
Configurer le DevKit
Avant de pouvoir utiliser votre DevKit pour le développement d’applications, vous devez effectuer les opérations suivantes :
- Suivez les contrôles à l’écran pour vous connecter à un réseau.
- Enregistrez l’appareil dans votre compte Stripe.
- Installez toutes les mises à jour disponibles.
Après la configuration initiale, vous pouvez à tout moment enregistrer votre DevKit sur un autre compte ou un autre emplacement. Pour ce faire, connectez le DevKit à Internet et suivez les étapes d’enregistrement d’un lecteur.
Bien qu’ils soient similaires aux appareils de production, les appareils DevKit :
- Ne peuvent fonctionner qu’en mode test.
- Sont fournis avec les options pour les développeurs et Android Debug Bridge (
adb
) activés par défaut. - Affichent un filigrane à l’écran pour indiquer que l’appareil n’est utilisé qu’à des fins de test. Le filigrane se déplace sur l’écran lorsque l’appareil est utilisé pour que toutes les parties de l’écran restent visibles.
L’API Terminal prend en charge le ciblage des appareils DevKit enregistrés.
Développer votre application pour les appareils Stripe
Suivez les étapes ci-après pour développer votre application en vue d’une utilisation avec des appareils Android Stripe, y compris la configuration de l’application et le passage à l’application du lecteur Stripe.
Développer l'applicationCôté client
Suivez les conseils ci-dessous pour les intégrations Apps on Devices.
Détecter un lecteur et s’y connecter
Encaisser des paiements
Après vous être connecté au lecteur en mode transfert, vous pouvez commencer à encaisser les paiements.
L’application de lecteur Stripe gère l’encaissement des paiements et d’autres opérations de paiement, telles que l’enregistrement d’une carte bancaire. Lorsqu’une opération de paiement est initiée, l’application de lecteur Stripe passe au premier plan et en plein écran. Ensuite, elle guide le client tout au long du processus et, une fois l’opération terminée (qu’elle ait abouti ou non) ou annulée par le client, replace votre application au premier plan. Lorsque votre application est au premier plan, l’application de lecteur Stripe continue de s’exécuter en arrière-plan.
Obtenez un exemple de collecte des paiements dans une application Apps on Devices.
Encaisser des paiements hors ligne Beta
Apps on Devices prend en charge la collecte des paiements hors ligne.
Gestion des appareilsCôté client
Vous pouvez accéder aux paramètres d’administration de l’appareil en lançant l’URI de lien profond stripe://settings/
depuis votre application.
Obtenez un exemple de lancement de l’URI de lien profond pour accéder aux paramètres d’administration.
Instrumenter l'applicationCôté client
Stripe ne fournit pas de solution d’instrumentation au niveau de l’application. Pour garder une trace des crashs et autres logs de votre application, vous pouvez utiliser une bibliothèque tierce telle que Sentry ou Crashlytics.
Définir la langue de l'appareilCôté client
La valeur renvoyée par Locale.getDefault() dépend de la langue choisie par l’utilisateur de l’appareil (et non du pays). Vous pouvez modifier la langue de l’appareil dans les paramètres d’administration.
Orientation de l'écranCôté client
Les appareils Android Stripe ont le paramètre Auto-rotation de l’écran activé par défaut. Votre application peut remplacer ce paramètre en verrouillant l’interface utilisateur sur une orientation d’écran donnée.
Pour ce faire, il suffit de définir l’attribut screenOrientation sur les balises <activity>
correspondantes dans le manifeste.
<activity android:name=".MainActivity" android:screenOrientation="portrait"> </activity>
L’orientation peut également être définie de manière programmatique à l’aide de Activity::setRequestedOrientation dans votre classe Activity
.
LimitesCôté client
Les appareils Stripe Android n’affichent pas d’interface utilisateur système, de bouton de retour ni de barre d’état.
Si votre application doit communiquer un niveau de batterie, un état de charge ou un état de connexion à l’utilisateur, consultez la documentation suivante dédiée à l’API Android pour obtenir des conseils :
Utiliser les accessoires de l'appareilCôté client
Lorsque le lecteur Stripe se connecte ou se déconnecte d’une station d’accueil, le système d’exploitation Android déclenche un changement de configuration.
Par défaut, l’activité de votre application est automatiquement recréée lors d’un changement de configuration.
Pour désactiver la recréation automatique de l’activité lors de la connexion ou de la déconnexion d’une station d’accueil, ajoutez android:configChanges="uiMode"
dans l’entrée <activity>
de votre fichier AndroidManifest.
.
<activity android:name=".MyActivity" android:configChanges="uiMode" />
Votre activité peut être notifiée des changements de configuration en implémentant Activity::onConfigurationChanged. Cette méthode n’est appelée que si vous avez spécifié les configurations que vous souhaitez gérer avec l’attribut android:configChanges
dans votre manifeste.
class MainActivity : Activity() { override fun onConfigurationChanged(newConfig: Configuration) { super.onConfigurationChanged(newConfig) // implement custom configuration change handling logic } }
Tester votre application
Utilisez votre appareil S700 DevKit pour tester votre application dans le Dashboard Stripe ou en utilisant Android Debug Bridge (adb
).
Paiements tests
Les appareils DevKit peuvent traiter des paiements tests à l’aide d’une carte de test physique Stripe, que vous pouvez commander dans le Dashboard. Lorsque vous testez les paiements, vous pouvez utiliser des montants décimaux pour produire des résultats spécifiques.
Avertissement
N’utilisez pas de cartes bancaires réelles pour les paiements tests sur les appareils DevKit.