Passer au contenu principal
Le SDK iOS Youverify vous permet d’ajouter une détection de vivacité anti-deepfake à vos applications iPhone et iPad en Swift. Les utilisateurs sont guidés dans une courte tâche de mouvement de la tête qui confirme qu’une personne réelle, et non une image ou une vidéo usurpée, effectue la vérification. Avant d’initialiser le SDK, vous devez générer un identifiant de session et un jeton de vivacité depuis votre backend.

Version actuelle

La dernière version compacte du SDK iOS Liveness est la 0.1.5. Une version de compatibilité est également disponible pour les intégrations plus anciennes.

Prérequis

  • Cible de déploiement iOS minimale : iOS 13.0
  • Permission caméra déclarée (NSCameraUsageDescription dans Info.plist)
  • Swift 5.x ou supérieur

Étape 1 — Ajouter le SDK

Ajoutez le pod à votre Podfile :
Exécutez ensuite :

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

Ajoutez la clé suivante à votre Info.plist :

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

Avant d’initialiser le SDK, votre backend doit générer un identifiant de session et un jeton de vivacité. Utilisez l’assistant ApiClient ci-dessous comme référence pour les appels requis. Générer l’identifiant de session : POST /v2/api/sdk/session-id :
Générer le jeton de vivacité : POST /v2/api/sdk/liveness-token :
N’intégrez jamais votre clé d’API secrète dans votre application iOS. Effectuez ces requêtes depuis votre serveur et ne transmettez à votre application que les valeurs sessionId et authToken obtenues.

Étape 4 — Initialiser et lancer le SDK

1

Importer le package

2

Initialiser le SDK avec les jetons

3

Démarrer la tâche de vivacité

4

Ajouter le view controller de vivacité

5

Gérer le delegate de fermeture

Tâches de vivacité disponibles

Toutes les tâches acceptent un paramètre difficulty (.easy, .medium, .hard) et un timeout facultatif en millisecondes.

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 de vivacité généré côté serveur via POST /v2/api/sdk/liveness-token.
Bool
défaut:"true"
Définissez-le sur false pour la production. Par défaut, true.
YVLivenessUser
Informations sur l’utilisateur. firstName est obligatoire ; lastName et email sont facultatifs.
Bool
défaut:"false"
Définissez-le sur true pour activer la narration audio des instructions des tâches.

Données de callback (LivenessData)

Bool
true si le contrôle de vivacité a réussi toutes les tâches.
String
URL ou image du visage encodée en Base64, capturée pendant le contrôle.
String
URL ou clip vidéo encodé en Base64 de l’utilisateur réalisant la tâche de vivacité.
LivenessError
Présent uniquement en cas d’échec. Contient key (par ex. eyes_closed, image_capture_failed, invalid_or_expired_session) et message.

Version iOS (Compat)

Une version de compatibilité du SDK est disponible pour les intégrations nécessitant la prise en charge de versions d’iOS plus anciennes ou de bases de code héritées. Installez-la via CocoaPods :
La version compat partage la même API d’initialisation que le SDK compact standard.
Si vous recevez une erreur invalid_or_expired_session, votre identifiant de session a expiré. Générez de nouvelles valeurs sessionId et sessionToken depuis votre backend et appelez de nouveau initializeSDK avec ces valeurs.