El SDK de la versión 1 de los Servicios de juego de Google Play depende del Acceso con Google para Android, que dejó de estar disponible y se quitará del SDK
de Auth de Servicios de Google Play
(com.google.android.gms:play-services-auth) en 2025. Las apps de juegos nuevas pueden usar la versión 1 de juegos hasta 2025. La eliminación del Acceso con Google genera problemas de dependencia para las apps de juegos existentes. Migrar las apps de juegos existentes del SDK
de la versión 1 de juegos
al SDK
de la versión 2 de juegos
resuelve los problemas de dependencia que genera la eliminación del Acceso con Google.
La migración de los Servicios de Google Play Games de la versión 1 a la versión 2 es una actualización importante que simplifica el desarrollo y admite los juegos multiplataforma. Los Servicios de Google Play Games v2 desacoplan la identidad de la plataforma y la identidad en el juego, y actúan como un sistema de identidad a nivel de la plataforma que autentica automáticamente a los jugadores en el lanzamiento. La identidad de la plataforma ahora está separada del sistema principal de cuentas en el juego, que debes administrar de forma independiente con herramientas como Acceso con Google o backends propietarios. La integración del SDK de los Servicios de Play Games v2 usa el ID de jugador para las funciones de la plataforma, como los logros y las tablas de clasificación, sin alterar los flujos de incorporación o acceso existentes.
Este documento te ayuda a comprender las interacciones entre la aplicación de juegos y varios SDKs. Debido al cronograma oficial de baja, debes seguir los principios arquitectónicos, las rutas y las estrategias de comunicación con los jugadores de esta guía de migración para garantizar la continuidad de los jugadores.
Interacciones del SDK
En los diagramas, se ilustra la interacción entre una aplicación de juegos en Android, GMS Core, los Servicios de juego de Play y un servidor de juegos externo (3P). Se destaca cómo la aplicación usa los servicios de Google para la autenticación y las funciones del juego, mientras que también interactúa con un sistema externo independiente.
Versión 2 de juegos (actual)
Versión 1 de juegos (heredada)
A continuación, se incluye una breve descripción general de los componentes y los SDKs:
- Aplicación de juegos
- Representa la aplicación de juegos del usuario que se ejecuta en un dispositivo con tecnología Android.
- Contiene dos componentes principales:
- SDK de la versión 1 o la versión 2 de juegos El SDK del cliente es responsable de interactuar con los Servicios de Play Games.
- SDK de Auth El SDK de Auth de Servicios de Google Play es responsable de controlar los flujos de autenticación y autorización de los usuarios en la versión 1 de juegos.
- Ambos SDKs se comunican con AIDL (Lenguaje de definición de la interfaz de Android), lo que indica un patrón de comunicación entre diferentes procesos o servicios.
- GMS Core también se llama Servicios de Google Play.
- Esta es la capa de propiedad de Google en Android.
- La aplicación de juegos usa dos módulos de GMS Core:
- Módulo de juegos proporciona funciones específicas del juego, como tablas de clasificación, logros y administración del estado del juego.
- Módulo de Auth Controla las operaciones de autenticación y autorización de los usuarios.
- Los SDKs de juegos y Auth en la aplicación de juegos se comunican con los módulos correspondientes mediante interfaces AIDL, lo que indica la comunicación entre procesos (IPC).
- Puerta de enlace de los Servicios de Play Games
- Una puerta de enlace lógica que media la comunicación entre GMS Core y el servidor de Servicios de Play Games.
- Controla las solicitudes a la API, la transformación de datos y la autenticación para la comunicación del servidor.
- Servidor de los Servicios de Play Games
- Representa los servicios de backend de los Servicios de Play Games responsables de almacenar datos de juegos, administrar cuentas de usuario y facilitar funciones multijugador.
- Puerta de enlace de juegos externos
- Si tu aplicación de juegos califica como una aplicación externa (3P), la biblioteca cliente se comunica con los servidores de los Servicios de Play Games a través de los servidores de juegos externos.
- Implica que la aplicación también puede autenticarse con un proveedor de servicios diferente.
- Servidor de juegos externos
- Representa un servidor externo opcional con el que la aplicación de juegos puede interactuar, probablemente para funciones personalizadas o administración de datos.
- La comunicación con la aplicación se produce a través de la puerta de enlace de juegos externos.
Por qué migrar tu título a los Servicios de Play Games v2
La transición de los Servicios de Play Games v1 a v2 es una modernización arquitectónica importante que simplifica el desarrollo y admite los juegos multiplataforma.
A diferencia de la versión 1, que funcionaba como un sistema de identidad principal en el juego, los Servicios de juego de Play v2 desacoplan la identidad de la plataforma y la identidad en el juego. Actúa como un sistema de identidad a nivel de la plataforma que autentica automáticamente a los jugadores en el lanzamiento para administrar funciones como los logros y las tablas de clasificación.
Ahora debes administrar el sistema principal de cuentas en el juego de tu juego de forma independiente con herramientas como Acceso con Google o backends propietarios. El SDK de los Servicios de Play Games v2 permite que los juegos usen el ID de jugador de los Servicios de Play Games para acceder a las funciones de la plataforma sin cambiar los flujos de incorporación o acceso existentes. En este documento, se te guía a través de la migración, y se abarcan los principios arquitectónicos, las rutas y las estrategias de comunicación con los jugadores. El cumplimiento es fundamental para la continuidad de los jugadores, dado el cronograma oficial de baja.
Compara la autenticación de la plataforma y la autenticación en el juego
En los Servicios de Play Games v2, el concepto de "acceso" se desacopla en dos capas distintas:
- Identidad de la plataforma El SDK controla la autenticación de la plataforma.
- Identidad en el juego
Autenticación de la plataforma
Los Servicios de Play Games funcionan estrictamente como una capa de interacción de la plataforma. Administra la relación del jugador con el ecosistema de Google Play Juegos (logros, tablas de clasificación y eventos) en lugar de autenticarse en una cuenta o un inventario de juego específicos.
- Silencioso y automático: La autenticación se realiza automáticamente en segundo plano cuando se inicia el juego. No se requiere un botón manual de "Acceder" para los Servicios de Play Games.
- El ID de jugador: Tras la autenticación correcta de la plataforma, los Servicios de Play Games proporcionan un ID de jugador estable. Este ID es coherente en todos los dispositivos para el mismo juego, pero debe usarse principalmente para hacer un seguimiento de las estadísticas de la plataforma (como el progreso de los logros).
- Desacoplado: Los Servicios de Play Games v2 no deben usarse como el sistema de identidad principal de tu juego para administrar la cuenta en el juego del jugador con su progreso o inventario del juego. Los Servicios de Play Games v2 actúan estrictamente como un identificador de plataforma secundario y persistente.
Autenticación en el juego
Los desarrolladores son responsables de administrar la "cuenta en el juego" (IGA). Este es el sistema de identidad que vincula el progreso, el inventario y la moneda de un jugador dentro de tu juego.
- Identidad principal: Puedes usar tu propio backend, Acceso con Google (SiWG) o cualquier otro proveedor como método de acceso principal.
- Independencia: Se puede acceder a un jugador a los Servicios de Play Games (identidad de la plataforma) para obtener logros mientras se accede a cualquier cuenta en el juego específica. Por ejemplo, una cuenta de invitado o una cuenta de SiWG específica.
- Administración de varias cuentas en el juego: Los Servicios de Play Games son responsables solo de la autenticación de la plataforma con tu juego que administra la autenticación principal de los jugadores en sus cuentas en el juego (IGAs). Esto significa que no habrá cambios en los flujos existentes de tu juego sobre cómo los jugadores cambian entre sus cuentas en el juego. Mientras los jugadores lo hacen, seguirán autenticados en la plataforma de Play Games con los Servicios de Play Games, y tú seguirás enviando sus datos relacionados con los logros y otras funciones de los Servicios de Play Games en función del ID de jugador persistente.
Requisito de migración: Vincula las cuentas en el juego con Google Open ID en lugar del ID de jugador de los Servicios de Play Games
En los Servicios de Play Games v1, los desarrolladores usaban los Servicios de Play Games como el proveedor de identidad principal. Un botón de "Google Play" vincularía la cuenta en el juego (IGA) de un jugador directamente a su Player ID.
Los Servicios de Play Games v2 cambian esto proporcionando una autenticación de plataforma automática y silenciosa en el lanzamiento. El Player ID resultante ahora se usa exclusivamente para funciones de la plataforma, como tablas de clasificación y logros, independientemente del acceso a la cuenta principal.
Ahora, los juegos deben administrar la identidad principal de forma independiente a través de una pantalla de acceso dedicada que ofrece métodos como "Acceder con Google" (SiWG) o cualquier otra cuenta social. Es fundamental que los Servicios de Play Games v2 no se usen como un sistema de identidad principal.
Este cambio arquitectónico requiere un cambio correspondiente en la forma en que los desarrolladores estructuran los datos de sus cuentas. La cuenta en el juego (IGA) debe desacoplarse de estar vinculada principalmente al Player ID.
En cambio, la IGA ahora debe estar vinculada a un identificador principal estable que sea independiente de los Servicios de Play Games. El identificador recomendado es el Open ID que proporciona el flujo de Acceso con Google (SiWG). Este Open ID funciona como la clave única y persistente de la cuenta principal del jugador dentro de tu sistema.
Sin embargo, la IGA aún se puede vincular al Player ID como una vinculación secundaria. Este vínculo secundario cumple dos funciones fundamentales:
- Permite que el juego siga haciendo un seguimiento y actualizando el progreso de las funciones de Play Juegos (logros, etc.) asociadas con ese jugador específico.
- Habilita la funcionalidad "Restauración sin problemas", lo que permite que el juego acceda automáticamente a un jugador a su IGA usada más recientemente solo en un dispositivo nuevo o después de una reinstalación.
Comprender este modelo de identidad desacoplado es clave para desbloquear la ruta de migración técnica correcta para tu juego.
Comparación de funciones
En esta tabla, se incluye una comparación de funciones entre los SDKs de la versión 1 y la versión 2 de juegos:
Función |
SDK de la versión 1 de juegos |
SDK de la versión 2 de juegos |
|---|---|---|
Autenticación |
Se requiere la integración con play-services-auth. |
Simplificado y optimizado; no se requiere play-services-auth. |
Autorización |
Código adicional para el éxito, las fallas y los reintentos. |
Administrado por el SDK |
Token de acceso del servidor |
Puede solicitar permisos adicionales de OAuth 2.0 con GoogleSigninClient.Código adicional para el manejo de errores durante la autenticación. |
Puede solicitar tres permisos de identidad básicos de OAuth 2.0 con GamesSignInClient cuando solicite acceso del servidor a las APIs web de los Servicios de Play Games.
Para obtener más información, consulta Acceso del servidor a los Servicios de Play Games y Recupera códigos de autenticación del servidor. |
Proceso de acceso |
Usa GoogleSigninClient.Código adicional para el manejo de código estándar para la autenticación automática y el manejo de errores. |
Usa GamesSignInClient.El SDK controla el código estándar, la autenticación automática y el control de errores. El "acceso" se separa en dos capas distintas:
|
Ventana emergente de bienvenida |
Se requiere código adicional. Los desarrolladores pueden controlar su ubicación y sincronización. |
No se requiere código adicional. Interfaz de usuario coherente en todos los juegos configurados con el SDK de la versión 2 de juegos. |
Dependencias |
Requiere play-services-auth. |
El módulo de juegos se encarga de la autorización y la autenticación. No es necesario agregar dependencias adicionales. |
| Cerrar sesión |
Usa GoogleSignInClient.signOut. |
No se requiere la API de cierre de sesión porque los Servicios de Play Games v2 son una identidad de plataforma persistente. |
Varias cuentas de Servicios de Play Games y configuración por juego |
Es posible administrar la cuenta dentro del juego. |
Los usuarios pueden cambiar el perfil de los Servicios de Play Games en la configuración del dispositivo móvil. Para obtener más información, consulta cómo cambiar los perfiles de Play Juegos en dispositivos móviles. |