Passer au contenu principal
Le SDK Android Youverify vous permet d’ajouter une détection de vivacité anti-deepfake directement à votre application Android avec Jetpack Compose. Les utilisateurs réalisent une courte tâche de mouvement de la tête qui prouve la présence d’une personne réelle, et non d’une photo, d’une vidéo ou d’un deepfake. Avant de lancer le SDK, vous devez générer deux jetons côté serveur (un identifiant de session et un jeton de vivacité) pour authentifier la session en toute sécurité.

Version actuelle

La dernière version du SDK Android Liveness est la 0.0.12.

Prérequis

  • SDK Android minimum : API de niveau 24 (Android 7.0)
  • Jetpack Compose activé dans votre projet
  • Permission CAMERA déclarée dans votre AndroidManifest.xml

Étape 1 — Ajouter la dépendance

Ajoutez le SDK Youverify Liveness au fichier build.gradle.kts du module de votre application :
Ajoutez également la configuration des filtres ABI afin de prendre en charge les architectures natives requises :

Étape 2 — Déclarer la permission caméra

Ajoutez ce qui suit à votre AndroidManifest.xml :
Demandez la permission à l’exécution avant de lancer le SDK si votre application cible l’API de niveau 23 ou supérieur.

Étape 3 — Générer les jetons côté serveur

Avant d’initialiser le SDK, vous avez besoin de deux jetons générés par votre backend. Aucun des deux ne doit être généré dans votre application Android. Générer l’identifiant de session : appelez POST /v2/api/sdk/session-id :
Générer le jeton de vivacité : appelez POST /v2/api/sdk/liveness-token :
N’intégrez jamais votre clé d’API secrète (apiToken) dans votre application Android. Effectuez ces appels depuis votre serveur et ne transmettez à l’application que les valeurs sessionId et authToken obtenues.

Étape 4 — Initialiser et lancer le SDK

Une fois que vous disposez du sessionId et du sessionToken de votre backend, initialisez le SDK dans un Composable :

Tâches de vivacité disponibles

Le SDK prend en charge quatre types de tâches. Transmettez-les à livenessController.start(tasks = listOf(...)) :

Données de callback

onSuccess et onFailure reçoivent tous deux un objet LivenessData :
boolean
true si le contrôle de vivacité a réussi.
string
Image du visage encodée en Base64, capturée pendant le contrôle.
string
Clip vidéo de l’utilisateur réalisant la tâche de vivacité.
object
Présent uniquement en cas d’échec. Contient key (par ex. eyes_closed, image_capture_failed, invalid_or_expired_session) et message.

Options de configuration

string
Votre clé marchand publique Youverify. Peut être intégrée sans risque dans votre application.
string
requis
Identifiant de session généré côté serveur via POST /v2/api/sdk/session-id.
string
requis
Jeton d’authentification de vivacité généré côté serveur via POST /v2/api/sdk/liveness-token.
boolean
défaut:"true"
Définissez-le sur false pour la production. Par défaut, true (mode sandbox).
SDKUser
Informations sur l’utilisateur pour la session de vivacité. firstName est obligatoire ; lastName et email sont facultatifs.
boolean
défaut:"false"
Définissez-le sur true pour faire lire les instructions des tâches à l’utilisateur par synthèse audio.

Types de documents pris en charge

Lorsque vous utilisez le SDK Document Capture pour Android avec le SDK Liveness, les types de documents suivants sont pris en charge pour la capture : passeports, cartes nationales d’identité, permis de conduire et titres de séjour. Pour la liste complète des pays et des types de documents pris en charge, consultez la vue d’ensemble des SDK.
Les jetons de session expirent après une courte période. Si vous recevez une erreur invalid_or_expired_session, générez de nouvelles valeurs sessionId et sessionToken depuis votre backend et réinitialisez le SDK.