Identificar usuarios en el SDK de Android

Esta guía es para ti si tienes tu propio sistema de autenticación. Aquí aprenderás a trabajar con perfiles de usuario en Adapty para asegurarte de que se alinee con tu sistema de autenticación existente.

La forma en que gestionas las compras de los usuarios depende del modelo de autenticación de tu app:

Conceptos clave:

  • Los perfiles son las entidades necesarias para que funcione el SDK. Adapty los crea automáticamente.
  • Pueden ser anónimos (sin customer user ID) o identificados (con customer user ID).
  • Tú proporcionas el customer user ID para cruzar los perfiles de Adapty con tu sistema de autenticación interno.

Estas son las diferencias entre usuarios anónimos e identificados:

Usuarios anónimosUsuarios identificados
Gestión de comprasRestauración de compras a nivel de storeMantienen el historial de compras entre dispositivos gracias a su customer user ID
Gestión de perfilesNuevos perfiles en cada reinstalaciónEl mismo perfil en todas las sesiones y dispositivos
Persistencia de datosLos datos de usuarios anónimos están ligados a la instalación de la appLos datos de usuarios identificados persisten entre instalaciones de la app

Usuarios anónimos

Si no tienes autenticación de backend, no necesitas gestionar la autenticación en el código de la app:

  1. Cuando el SDK se activa en el primer arranque de la app, Adapty crea un nuevo perfil para el usuario.
  2. Cuando el usuario compra algo en la app, esa compra queda asociada a su perfil de Adapty y a su cuenta de la store.
  3. Cuando el usuario reinstala la app o la instala en un nuevo dispositivo, Adapty crea un nuevo perfil anónimo al activarse.
  4. Si el usuario ya había realizado compras en tu app, por defecto se sincronizan automáticamente desde el App Store al activar el SDK.

Con usuarios anónimos se crean nuevos perfiles en cada instalación, pero eso no es un problema porque, en los análisis de Adapty, puedes configurar qué se considera una nueva instalación.

Para usuarios anónimos, debes contar las instalaciones por ID de dispositivo. En este caso, cada instalación de la app en un dispositivo se cuenta como una instalación, incluidas las reinstalaciones.

Usuarios identificados

Tienes dos opciones para identificar usuarios en la app:

  • Durante el login/registro: Si los usuarios inician sesión después de que arranca tu app, llama a identify() con un customer user ID cuando se autentiquen.

  • Durante la activación del SDK: Si ya tienes un customer user ID almacenado cuando se lanza la app, envíalo al llamar a activate().

Por defecto, cuando Adapty recibe una compra de un Customer User ID que en ese momento está asociado a otro Customer User ID, el nivel de acceso se comparte, de modo que ambos perfiles tienen acceso de pago. Puedes configurar este ajuste para transferir el acceso de pago de un perfil a otro o desactivar completamente el uso compartido. Consulta el artículo para más detalles.

identify-diagram.webp

Durante el login/registro

Si identificas a los usuarios después del arranque de la app (por ejemplo, tras iniciar sesión o registrarse), usa el método identify para establecer su customer user ID.

  • Si no has usado este customer user ID antes, Adapty lo vinculará automáticamente al perfil actual.
  • Si ya has usado este customer user ID para identificar al usuario antes, Adapty pasará a trabajar con el perfil asociado a ese customer user ID.

Los customer user IDs deben ser únicos para cada usuario. Si escribes el valor del parámetro directamente en el código, todos los usuarios se considerarán como uno solo.

Espera a que se ejecute el callback de finalización de identify antes de llamar a otros métodos del SDK. Las llamadas concurrentes pueden acabar en el perfil anónimo en lugar del identificado. Consulta Orden de llamadas en el SDK de Android.

Durante la activación del SDK

Si ya conoces el customer user ID cuando activas el SDK, puedes enviarlo en el método activate en lugar de llamar a identify por separado.

Si conoces el customer user ID pero lo estableces solo después de la activación, eso significa que, al activarse, Adapty creará un nuevo perfil anónimo y cambiará al existente solo cuando llames a identify.

Puedes pasar un customer user ID existente (uno que hayas usado antes) o uno nuevo. Si pasas uno nuevo, el perfil creado al activarse se vinculará automáticamente a ese customer user ID.

Por defecto, crear perfiles anónimos no afecta a los dashboards de análisis, porque las instalaciones se cuentan por ID de dispositivo.

Un ID de dispositivo representa una única instalación de la app desde la store en un dispositivo y se regenera solo cuando la app se reinstala.
No depende de si es una primera o repetida instalación, ni de si se usa un customer user ID existente.

Crear un perfil (al activar el SDK o al cerrar sesión), iniciar sesión o actualizar la app sin reinstalarla no genera eventos de instalación adicionales.

Si quieres contar instalaciones por usuarios únicos en lugar de por dispositivos, ve a App settings y configura Installs definition for analytics.

Cerrar sesión de usuarios

Si tienes un botón para cerrar la sesión de los usuarios, usa el método logout.

Cerrar la sesión de un usuario crea un nuevo perfil anónimo para ese usuario.

Para volver a iniciar sesión de los usuarios en la app, usa el método identify.

Permitir compras sin iniciar sesión

Si tus usuarios pueden realizar compras tanto antes como después de iniciar sesión en tu app, debes asegurarte de que mantengan el acceso después de iniciar sesión:

  1. Cuando un usuario sin sesión realiza una compra, Adapty la vincula a su ID de perfil anónimo.
  2. Cuando el usuario inicia sesión en su cuenta, Adapty pasa a trabajar con su perfil identificado.
    • Si es un customer user ID nuevo (por ejemplo, la compra se realizó antes del registro), Adapty asigna el customer user ID al perfil actual, por lo que se mantiene todo el historial de compras.
    • Si es un customer user ID existente (el customer user ID ya está vinculado a un perfil), debes obtener el nivel de acceso actual después del cambio de perfil. Puedes llamar a getProfile justo después de la identificación, o escuchar las actualizaciones de perfil para que los datos se sincronicen automáticamente.

Próximos pasos

¡Enhorabuena! Has implementado la lógica de pago in-app en tu app. ¡Te deseamos mucho éxito con la monetización de tu app!

Para sacar aún más partido a Adapty, puedes explorar estos temas:

  • Pruebas: Asegúrate de que todo funciona como se espera
  • Onboardings: Engancha a los usuarios con onboardings e impulsa la retención
  • Integraciones: Integra con servicios de atribución de marketing y análisis con una sola línea de código
  • Establecer atributos de perfil personalizados: Añade atributos personalizados a los perfiles de usuario y crea segmentos para lanzar pruebas A/B o mostrar distintos paywalls a diferentes usuarios