Integración de Apps Móviles
Integra SmartID en tus aplicaciones Android e iOS para reconocimiento de dispositivos, seguimiento de inicio de sesión y monitoreo de transacciones.
EN ESTA PÁGINA
Descripción General
El SDK móvil de SmartID está disponible para ambas plataformas principales. Recopila datos cifrados de huella digital del dispositivo y los devuelve mediante callbacks para que tu app los envíe a tu backend.
Para aplicaciones no nativas (React Native, Flutter, Ionic, etc.), la integración también es soportada a través de bridges nativos. Contacta al equipo de SmartID para documentación específica de bridges.
Android
SDK nativo distribuido via Maven. Soporta Java y Kotlin. API level mínimo 21.
iOS
SDK nativo distribuido via Swift Package Manager. Soporta Swift 5+. iOS mínimo 13.
Android SDK
Instalación
Agrega el repositorio Maven de SmartID y la dependencia al build.gradle:
repositories {
// SmartID Maven repository
maven {
url 'https://mymavenrepo.com/repo/<repo_id>/'
}
}
dependencies {
implementation 'com.develsystems.smartid:demo:5.0.0'
} | Repository | https://mymavenrepo.com/repo/<repo_id>/ |
| Dependency | com.develsystems.smartid:demo |
| Version | 5.0.0 |
La URL del repositorio Maven y las credenciales de la dependencia son proporcionadas por el equipo de SmartID durante el onboarding. Contacta a tu gerente de cuenta si no las has recibido.
Integración
La integración consta de dos partes: recopilar datos del dispositivo y enviarlos a tu backend.
1. Recopilar Datos del Dispositivo
Usa el SDK para obtener información cifrada del dispositivo:
SmartId
.getInstance()
.GetRawData(/*optional*/ "backend_url")
.onSuccess((time, response) -> {
// response contains encrypted device data
// Send it to your backend with user credentials
})
.onFailure((time, message, errorCode) -> {
// Handle error – send empty data field
})
.start(); SmartId
.getInstance()
.GetRawData(/*optional*/ "backend_url")
.onSuccess { time, response ->
// response contains encrypted device data
// Send it to your backend with user credentials
}
.onFailure { time, message, errorCode ->
// Handle error – send empty data field
}
.start() Parámetros del Método
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
backend_url | String | Optional | URL de tu backend. Utilizada para verificaciones de seguridad adicionales como SSLPinning y detección de PharmingAttack. |
Parámetros del Callback
| Parámetro | Tipo | Descripción |
|---|---|---|
time | Long | Duración de la solicitud en milisegundos |
response | String | Datos cifrados del dispositivo para enviar al API de SmartID |
message | String | Descripción del error (solo en callback de falla) |
errorCode | Int | Código de error (solo en callback de falla) |
Si el SDK devuelve un callback de Failure, aún debes enviar la solicitud de login a tu backend, pero con un campo data vacío.
2. Procesamiento en Backend
Cuando el usuario envía sus credenciales, adjunta el <code>response</code> cifrado de SmartID y reenvíalo al API de SmartID. Consulta la Referencia API para detalles completos de endpoints, atributos de solicitud y ejemplos.
iOS SDK
Instalación
Agrega los siguientes paquetes via Swift Package Manager:
| SmartID SDK | https://github.com/DevelSystems/SmartID-iOS | Tag: 5.0.0 |
| KeychainAccess | https://github.com/kishikawakatsumi/KeychainAccess | Version: 4.2.2 |
El acceso al repositorio del SDK de SmartID para iOS es otorgado por el equipo de SmartID durante el onboarding. Contacta a tu gerente de cuenta si no tienes acceso.
La dependencia KeychainAccess es requerida para que el SDK de SmartID para iOS funcione correctamente.
Integración
La integración consta de dos partes: recopilar datos del dispositivo y enviarlos a tu backend.
1. Recopilar Datos del Dispositivo
Usa el SDK para obtener información cifrada del dispositivo:
SID.shared
.getRawData("backend_url") // optional parameter
.onSuccess(success: { time, response in
// response contains encrypted device data
// Send it to your backend with user credentials
})
.onFailure(failure: { time, message, errorCode in
// Handle error – send empty data field
})
.start() Parámetros del Método
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
backend_url | String | Optional | URL de tu backend. Utilizada para verificaciones de seguridad adicionales como SSLPinning y detección de PharmingAttack. |
Parámetros del Callback
| Parámetro | Tipo | Descripción |
|---|---|---|
time | Long | Duración de la solicitud en milisegundos |
response | String | Datos cifrados del dispositivo para enviar al API de SmartID |
message | String | Descripción del error (solo en callback de falla) |
errorCode | Int | Código de error (solo en callback de falla) |
Si el SDK devuelve un callback de Failure, aún debes enviar la solicitud de login a tu backend, pero con un campo data vacío.
2. Procesamiento en Backend
Cuando el usuario envía sus credenciales, adjunta el <code>response</code> cifrado de SmartID y reenvíalo al API de SmartID. Consulta la Referencia API para detalles completos de endpoints, atributos de solicitud y ejemplos.