API de Recall

La API de Recall permite que los juegos usen los Servicios de juego de Play (PGS) como complemento de su mecanismos de acceso existentes, como Acceso con Google, y la sincronización jugadores información de acceso en todos sus dispositivos para disminuir la deserción en la integración y aumentar la retención después de 1 día. La API administra los vínculos entre la cuenta de los Servicios de juego de Play (PGS) de un usuario y sus cuentas en el juego mediante el almacenamiento de tokens de recuperación en los servidores de Google. Este es un situación de ejemplo sobre cómo se podría usar la API de Recall:

  1. Un usuario está jugando un juego en el que el desarrollador tiene un sistema de identidad para seguir su progreso y usa los PGS en paralelo con otros métodos de autenticación para registrar usuarios en su juego. En este ejemplo, un usuario accede a su cuenta de los PGS Laura y crea una cuenta en el juego con el sistema de identidad del desarrollador llamada Racer94. A medida que el usuario juega, el servidor de juegos del desarrollador sincroniza su progreso.

    El usuario accedió con los PGS y una cuenta en el juego

  2. Por separado, el desarrollador guarda un token de recuperación con Google, que se corresponde con la cuenta del usuario en el juego. Google almacena automáticamente ese token de recuperación en el perfil de los PGS del usuario.

    El servidor de juegos almacena el token de recuperación con los servidores de Google

  3. Ahora el usuario decide jugar en Google Play Juegos en PC durante la primera tiempo. El usuario accede automáticamente con su cuenta de los PGS, y el El cliente de juego verifica si hay algún progreso disponible para este PGS. usuario. El servidor de juegos consulta a Google para ver si hay tokens para esta cuenta de los PGS. Dado que existen, Google devuelve el token de recuperación. el servidor de juegos usa ese token para encontrar la cuenta asociada Racer94 y restablecer su progreso. Dado que acceder con los PGS es una una experiencia fluida, la app restablece el progreso del usuario sin el usuario debe ingresar un nombre de usuario o una contraseña. Además, el desarrollador pueden usar el acceso a los PGS con su sistema de identidad existente y confiar en que para almacenar el vínculo entre el progreso del jugador y su cuenta de los PGS.

    El servidor de juegos restablece el progreso con el token de recuperación

Como se ve en el ejemplo anterior, hay dos acciones principales que realiza la API de Recall:

  • Almacenar el token con Google cuando un usuario accede con uno de los componentes del juego cuentas de servicio.
  • Recuperar el token de un usuario para restablecer su contenido dentro del juego cuentas de servicio.

Además de los tokens de recuperación, la API de Recall también requiere un identificador estable correspondiente a la cuenta en el juego, conocida como persona, para aplicar restricciones de cardinalidad. Podrías pensar en una persona que la etiqueta que representa la cuenta del usuario en el juego dentro del de identidad y el token de recuperación como una clave que se usa para restablecer cuenta del usuario en el juego. No se deben volver a usar los valores de arquetipo ni token en diferentes Proyectos de PGS. Además, si bien los tokens de recuperación se pueden cambiar con el tiempo, un arquetipo debe ser estable según la cuenta del usuario en el juego.

Reglas de cardinalidad

La API de Recall aplica una relación 1:1 entre los perfiles de los PGS y las cuentas dentro del juego (denominadas reglas de cardinalidad), en la que un arquetipo solo se puede vincular a un perfil de los PGS, y un perfil de los PGS solo se puede vincular a un arquetipo. El arquetipo se usa como un identificador estable para una cuenta en el juego, ya que los tokens de recuperación pueden cambiar con el tiempo.

El arquetipo vinculado a un perfil de los PGS también puede cambiar con el tiempo (ya que se vinculan diferentes cuentas dentro del juego a este perfil).

Flujos técnicos detallados para almacenar y recuperar los tokens de recuperación

Esta sección abarca el flujo técnico entre el cliente, el servidor del juego, y los servidores de Google cuando se almacenan y recuperan tokens de recuperación:

Paso 1: Accede al usuario de los PGS y recupera el ID de sesión

El juego inicializa el SDK de los PGS y, luego, intenta hacer que el usuario acceda con los PGS.

El usuario accede con los PGS

Si el usuario accedió, solicita un ID de sesión del SDK de juegos en el cliente del juego y solicita un token de OAuth 2.0 del backend de OAuth de Google. El ID de sesión y los tokens de OAuth 2.0 se usan para la comunicación con el backend de Juegos de Google.

El desarrollador solicita un ID de sesión

Paso 2: Recupera cualquier token de recuperación disponible

Solicita cualquier token de recuperación asociado a la cuenta del usuario de los PGS. Si hay un token presente, continúa con el paso 3a y restablece el progreso. De lo contrario, si se trata de un usuario nuevo y no hay un token presente, continúa con el paso 3b y almacena un token nuevo.

El desarrollador recupera el token de recuperación

Paso 3a: Si hay un token, restablece el progreso

Si hay un token presente, recupera y desencripta el token y restablece los datos del usuario.

El desarrollador restablece los datos del token de recuperación

Paso 3b: Si no hay un token, almacena uno

Como no hay un token, no se restablece ningún progreso. El usuario accede con el sistema de identidad del desarrollador o crea una cuenta nueva si no hay una existente.

El usuario accede con su cuenta en el juego

Crea un token de recuperación encriptado que codifique la cuenta del usuario en el juego y envíalo a Google junto con el ID de sesión y el token de OAuth 2.0. En este punto, Google crea una asociación entre el token de recuperación que se envió y la cuenta de los PGS del jugador.

El desarrollador almacena el token de recuperación

Flujos para usuarios sin un perfil de PGS

Puedes almacenar tokens de Recall para un usuario que aún no haya creado un perfil de PGS. usando el modo sin perfil. Sin embargo, existen dos advertencias importantes:

  • No puedes recuperar los tokens de un usuario que no tiene un perfil de los PGS. Perfil se solicita automáticamente la creación cuando el usuario intenta acceder a tu juego con los Servicios de juego de Play en un segundo dispositivo.
  • Debes seguir lineamientos adicionales. para asegurarse de tener una notificación adecuada que describa los siguientes elementos y obtener el consentimiento correspondiente del usuario final:
    • Tu uso compartido de los datos con Google para habilitar la cuenta de Play Juegos la función de vinculación.
    • La disponibilidad de parámetros de configuración para administrar este uso compartido, como Play Juegos configuración.
    • El tratamiento de dichos datos en virtud de la Política de Privacidad de Google Política.

Almacena un par de tokens y arquetipos

Un usuario sin un perfil de los PGS abre un juego

  1. Un usuario que no tiene un perfil de los PGS abre un juego que tiene recuperación sin perfil. habilitado.
  2. El SDK de juegos activa un acceso automático, que falla porque el usuario sin perfil de PGS.
  3. El SDK de juegos muestra una barra de notificaciones que informa al usuario que el juego tiene integración con Google. Esta barra de notificaciones es accionable: el usuario puede inhabilitar hasta que se cree un perfil.
  4. El juego solicita acceso de recuperación. Ten en cuenta que los PGS rechazan las solicitudes de acceso de retiro. cuando hay perfiles de los PGS en el dispositivo o cuando no hay perfiles de Google Cuentas en el dispositivo. En ese caso, el juego debería continuar sin usar PGS.
  5. Después de que el usuario accede con una cuenta en el juego, este crea un token y par de arquetipos que corresponde a su cuenta en el juego. El partido almacena este par con Google. Es posible que el juego almacene más tokens posteriormente si el el usuario accede a otras cuentas en el juego.

Cómo iniciar un juego en un dispositivo nuevo

  1. Un usuario que no tiene un perfil de los PGS abre un juego que tiene habilitada la recuperación sin perfil. en un dispositivo.
  2. El juego registra un token de recuperación sin perfil, como se describe en Cómo almacenar un token y par de arquetipos.
  3. El usuario abre el mismo juego en otro dispositivo que tiene la misma cuenta. configuración.
  4. El SDK de juegos activa la creación de perfiles. El usuario puede revisar y rechazar los tokens de recuperación almacenados previamente. Por el momento, el usuario crea un perfil de los PGS.
  5. Se completa el acceso automático a los PGS, y el juego recibe la y el estado de autenticación.
  6. El juego recupera tokens de recuperación para el usuario como de costumbre.

Próximos pasos

Para integrar la API de Recall con tu servidor de cliente y de juegos, sigue estos pasos: esta guía de implementación.