El SDK de Applivery crea y registra usuarios automáticamente para cada dispositivo que ejecuta una App con el SDK integrado. Estos registros aparecen en el panel de Applivery y te permiten obtener información sobre quién instala tus Apps, quién reporta feedback y cómo se adoptan las Builds en tu base de usuarios.
Los usuarios del SDK se dividen en dos tipos según su origen: usuarios del SDK (identidades vinculadas y con nombre) y usuarios temporales del SDK (anónimos, basados en el dispositivo). Ambos cuentan como empleados dentro del límite de empleados de tu Workspace.
Tanto los usuarios del SDK como los usuarios temporales del SDK cuentan para la cuota de Store Employees de tu Workspace.
Tipos de usuarios del SDK
| Usuario SDK | Usuario temporal del SDK | |
|---|---|---|
| Origen | Creado mediante programación a través de bindUser() |
Creado automáticamente por el SDK en el primer lanzamiento del dispositivo |
| Duración | Permanente | Caduca tras 30 días de inactividad en todas las Apps de tu organización |
| Identificador | Dirección de email que proporcionas. Ej. [email protected] |
ID del dispositivo. Ej. 6effd10a-5b00-45ec-b02d-580b53a5775c |
| Descripción | Empleados con nombre y una identidad conocida, vinculados a la sesión a través de bindUser() |
Usuarios desconocidos creados automáticamente para rastrear dispositivos únicos. Únicos en tu Workspace basándose en el ID del dispositivo. |
La inactividad se define como la última vez que un usuario abrió cualquier App de tu organización con el SDK integrado. El contador de 30 días se reinicia en cada apertura.
Usuarios del SDK (vinculados)
Cuando llamas a bindUser() con una dirección de email, Applivery vincula la sesión del dispositivo actual a una identidad con nombre. Esto te permite:
- Ver quién descargó o instaló cada Build.
- Atribuir informes de feedback y envíos de errores a una persona concreta.
- Rastrear la adopción de actualizaciones por usuario con nombre.
- Controlar el acceso a la app por identidad de usuario cuando la aplicación de autenticación está activada.
Los usuarios vinculados aparecen con su dirección de email en el panel de Applivery, facilitando la correlación de la actividad del SDK con tu propia base de usuarios.
Usuarios temporales del SDK (anónimos)
Cuando un dispositivo ejecuta el SDK por primera vez sin una llamada a bindUser(), Applivery crea automáticamente un registro de Temporal SDK User identificado por el ID único del dispositivo. Estos registros permiten analíticas básicas a nivel de dispositivo (instalaciones, adopción de actualizaciones) incluso cuando no hay ninguna identidad con nombre disponible.
Los usuarios temporales del SDK caducan tras 30 días de inactividad. Si el mismo dispositivo vuelve a abrir la App después de la caducidad, se crea un nuevo registro de Temporal SDK User.
Vincular un usuario
Llama a bindUser después de que se complete el flujo de autenticación propio de tu App, para que la identidad sea conocida antes de que se produzca cualquier interacción con Applivery.
AppliverySDK.shared.bindUser(
email: "[email protected]", // Obligatorio
firstName: "Jane", // Opcional
lastName: "Doe", // Opcional
tags: ["beta", "ios-team"] // Opcional — se usa para filtrar en el panel
) {
// callback onComplete — se llama cuando se confirma la vinculación
}
[[AppliverySDK shared] bindUserWithEmail:@"[email protected]"
firstName:@"Jane"
lastName:@"Doe"
tags:@[@"beta", @"ios-team"]
onComplete:nil];
Applivery.getInstance().bindUser(
email = "[email protected]",
firstName = "Jane",
lastName = "Doe",
tags = listOf("beta", "android-team")
)
Parámetros de bindUser
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
email |
String | Sí | La dirección de email del usuario. Se usa como identificador principal en el panel de Applivery. |
firstName |
String | No | El nombre del usuario. Se muestra junto al email en informes y feedback. |
lastName |
String | No | El apellido del usuario. |
tags |
Array de Strings | No | Etiquetas personalizadas para agrupar o filtrar usuarios en el panel. Ej. ["qa", "ios"]. |
Desvincular un usuario
Llama a unbindUser cuando el usuario de tu App cierre sesión, para que las interacciones posteriores del SDK ya no se atribuyan a esa identidad.
AppliverySDK.shared.unbindUser {
// callback onComplete
}
[[AppliverySDK shared] unbindUserWithOnComplete:nil];
Applivery.getInstance().unbindUser()
Tras desvincular, la sesión del SDK vuelve al modo anónimo hasta que se vuelva a llamar a bindUser.
Obtener el usuario actual
Puedes leer el perfil del usuario vinculado actualmente en cualquier momento:
AppliverySDK.shared.getUser { userInfo in
// userInfo es un NSDictionary, o nil si no hay ningún usuario vinculado
print(userInfo ?? "No user bound")
}
Applivery.getInstance().getUser(object : GetUserCallback {
override fun onSuccess(user: AppliveryUser?) {
// user es null si no hay ningún usuario vinculado
}
override fun onError(error: Throwable) { /* gestionar */ }
})
Aplicación de autenticación
Si tu Publicación requiere que los usuarios inicien sesión antes de acceder a la App, puedes imponer esto a nivel del SDK. Cuando enforceAuthentication está establecido en true en la configuración del SDK, los usuarios deben autenticarse a través de Applivery (o el SSO de tu Workspace) antes de que la App sea utilizable.
let config = AppliveryConfiguration(
enforceAuthentication: true
)
AppliverySDK.shared.start(token: "YOUR_TOKEN", configuration: config)
val config = Configuration(
enforceAuthentication = true
)
Applivery.start(APPLIVERY_TOKEN, configuration = config)
Cuando la aplicación está activada y el usuario no se ha autenticado, Applivery mostrará un prompt de inicio de sesión. Si enforceAuthentication es false (el valor predeterminado), los usuarios pueden descartar el prompt de inicio de sesión y continuar usando la App de forma anónima.
Visibilidad de los usuarios en el panel
Los usuarios del SDK son visibles por app en el panel de Applivery o en la sección Directorio bajo el menú de Ajustes. Para cada usuario puedes ver:
- Dirección de email y nombre para mostrar (para usuarios vinculados).
- Etiquetas asignadas a través de
bindUser. - Dispositivos asociados al usuario.
- Historial de descargas — qué Builds se instalaron.
- Envíos de feedback atribuidos al usuario.
Los usuarios anónimos aparecen con un identificador de dispositivo en lugar de una dirección de email.
Usuarios del SDK frente a otros tipos de usuario
Applivery tiene varios tipos de usuario diferenciados. Entender las diferencias ayuda a evitar confusiones:
| Tipo de usuario | Quiénes son | Cómo se autentican | Dónde aparecen |
|---|---|---|---|
| Colaboradores | Miembros del equipo que gestionan la App (desarrolladores, responsables de QA) | Cuenta de Applivery o SSO | Panel → Equipo |
| Empleados de la Store | Usuarios finales con acceso a las Publicaciones de la Store Enterprise | Cuenta de Applivery, SSO, contraseña u OTP | App → Usuarios (Store) |
| Usuarios SDK | Usuarios de una App con el SDK integrado | A través de bindUser en el código de la App |
App → Usuarios (SDK) |
| Usuarios OTP | Usuarios externos con acceso limitado en el tiempo a una Publicación | Contraseña de un solo uso enviada por email | App → Publicación → Lista de permisos OTP |
Los usuarios del SDK son el único tipo creado mediante programación desde dentro de la propia App. Todos los demás tipos se gestionan a través del panel de Applivery o la API.