gpg:: GameServices
#include <game_services.h>
El punto de partida para interactuar con Google Play Juegos.
Resumen
Ciclo de vida de los servicios de juego
Se crea una instancia de la clase GameServices mediante un GameServices::Builder. Cuando se crea, la instancia no tiene acceso a los servicios de juego (es decir, IsAuthorized() mostrará el valor "false"). Se inicia un intento de acceso silencioso en segundo plano y puede completarse correctamente si el usuario accedió al final de una sesión anterior. Hasta que se complete este intento de acceso silencioso, se deberá ocultar o inhabilitar cualquier IU de autenticación del usuario (por ejemplo, los botones de acceso o salida).
Cuando se complete este intento de acceso silencioso, se notificará la devolución de llamada OnAuthActionFinished para la instancia de GameServices (registrada con GameServices::Builder::SetOnAuthActionFinished). Si los argumentos de devolución de llamada reflejan un intento de acceso exitoso, se puede suponer que la instancia está conectada a los servicios de juego (es decir, IsAuthorized() mostrará el valor "true") y se deberá habilitar la IU de cierre de sesión. Si el argumento de devolución de llamada refleja un intento de acceso fallido, se debe habilitar la IU de acceso.
El cierre de sesión explícito con el método SignOut() solo debe invocarse cuando el usuario lo solicita. Esta acción solicita una transición a un estado sin acceder a la cuenta. La finalización de esta transición se indica mediante una invocación a la devolución de llamada OnAuthActionFinished. Hasta el momento en que se invoque esta devolución de llamada, no se debe llamar a otras APIs de GameServices (incluida StartAuthorizationUI()).
Cuando se destruya una instancia de GameServices, se bloqueará hasta que no haya operaciones pendientes para evitar la pérdida de datos. Si no se desea este comportamiento de bloqueo sobre destrucción, se debe emitir un Flush() y la instancia de GameServices se debe mantener activa hasta que se complete Flush().
Para que GameServices funcione correctamente en versiones de Android anteriores a la 4.0, el objeto Activity propietario debe llamar a devoluciones de llamada de ciclo de vida. Consulta AndroidSupport.
Constructores y destructores |
|
---|---|
GameServices()
|
|
~GameServices()
|
Tipos públicos |
|
---|---|
FlushCallback
|
typedefstd::function< void(FlushStatus)>
Define un tipo de devolución de llamada que recibe el resultado (estado) de una operación de limpieza. |
Funciones públicas |
|
---|---|
Achievements()
|
Proporciona una referencia al objeto AchievementManager que se usa para acceder a los logros y manipularlos.
|
Achievements() const
|
const AchievementManager &
Proporciona una referencia constante al objeto AchievementManager que se usa para acceder a los logros y manipularlos.
|
Events()
|
Proporciona una referencia al objeto EventManager que se usa para acceder a eventos y manipularlos.
|
Events() const
|
const EventManager &
Proporciona una referencia constante al objeto EventManager que se usa para acceder a eventos y manipularlos.
|
Flush(FlushCallback callback)
|
void
Limpia de forma asíncrona la cola de despacho principal y muestra el estado de la limpieza en la FlushCallback proporcionada.
|
FlushBlocking()
|
De manera síncrona, realiza una limpieza y obtiene un resultado (estado) de la limpieza.
|
FlushBlocking(Timeout timeout)
|
De manera síncrona, realiza una limpieza y obtiene un resultado (estado) de la limpieza.
|
IsAuthorized()
|
bool
Te permite comprobar de forma explícita el estado de autorización actual.
|
Leaderboards()
|
Proporciona una referencia al objeto LeaderboardManager que se usa para acceder a los logros y manipularlos.
|
Leaderboards() const
|
const LeaderboardManager &
Proporciona una referencia constante al objeto LeaderboardManager que se usa para acceder a los logros y manipularlos.
|
Players()
|
Proporciona una referencia al objeto PlayerManager, que permite acceder a información sobre jugadores.
|
Players() const
|
const PlayerManager &
Proporciona una referencia constante al objeto PlayerManager, que permite acceder a información sobre jugadores.
|
RealTimeMultiplayer()
|
Proporciona una referencia al objeto RealTimeMultiplayerManager, que permite el acceso a los métodos relacionados con RTMP.
|
RealTimeMultiplayer() const
|
const RealTimeMultiplayerManager &
Proporciona una referencia constante al objeto RealTimeMultiplayerManager, que permite el acceso a los métodos relacionados con RTMP.
|
SignOut()
|
void
Inicia el proceso de cierre de sesión asíncrono.
|
Snapshots()
|
Proporciona una referencia al objeto SnapshotManager que se usa para acceder a las instantáneas y manipularlas.
|
Snapshots() const
|
const SnapshotManager &
Proporciona una referencia constante al objeto SnapshotManager que se usa para acceder a las instantáneas y manipularlas.
|
StartAuthorizationUI()
|
void
Abre un flujo de autorización de usuarios específico de la plataforma.
|
Stats()
|
Proporciona una referencia al objeto StatsManager que se usa para acceder a las estadísticas del juego y los jugadores.
|
Stats() const
|
const StatsManager &
Proporciona una referencia constante al objeto StatsManager que se usa para acceder a las estadísticas del juego y los jugadores.
|
TurnBasedMultiplayer()
|
Proporciona una referencia al objeto TurnBasedMultiplayerManager, que permite el acceso a los métodos relacionados con TBMP.
|
TurnBasedMultiplayer() const
|
const TurnBasedMultiplayerManager &
Proporciona una referencia de constante al objeto TurnBasedMultiplayerManager, que permite el acceso a los métodos relacionados con TBMP.
|
Video()
|
Proporciona una referencia al objeto VideoManager, que permite el acceso a los métodos relacionados con el video.
|
Video() const
|
const VideoManager &
Proporciona una referencia constante al objeto VideoManager, que permite el acceso a los métodos relacionados con el video.
|
Clases |
|
---|---|
gpg:: |
Se usa para crear y configurar una instancia de la clase GameServices. |
Tipos públicos
FlushCallback
std::function< void(FlushStatus)> FlushCallback
Define un tipo de devolución de llamada que recibe el resultado (estado) de una operación de limpieza.
Se usa en Flush().
Funciones públicas
Logros
AchievementManager & Achievements()
Proporciona una referencia al objeto AchievementManager que se usa para acceder a los logros y manipularlos.
Logros
const AchievementManager & Achievements() const
Proporciona una referencia constante al objeto AchievementManager que se usa para acceder a los logros y manipularlos.
Eventos
EventManager & Events()
Proporciona una referencia al objeto EventManager que se usa para acceder a eventos y manipularlos.
Eventos
const EventManager & Events() const
Proporciona una referencia constante al objeto EventManager que se usa para acceder a eventos y manipularlos.
Flush
void Flush( FlushCallback callback )
Limpia de forma asíncrona la cola de despacho principal y muestra el estado de la limpieza en la FlushCallback proporcionada.
Los estados posibles son FLUSHED, ERROR_INTERNAL y ERROR_VERSION_UPDATE_REQUIRED.
FlushBlocking
FlushStatus FlushBlocking()
De manera síncrona, realiza una limpieza y obtiene un resultado (estado) de la limpieza.
Los estados posibles son FLUSHED, ERROR_INTERNAL, ERROR_NOT_AUTHORIZED, ERROR_VERSION_UPDATE_REQUIRED y ERROR_TIMEOUT. Si no especificas este tiempo de espera, esta llamada a función será equivalente a llamar a FlushStatus FlushBlocking(Timeout), con el tiempo de espera especificado en 10 años.
FlushBlocking
FlushStatus FlushBlocking( Timeout timeout )
De manera síncrona, realiza una limpieza y obtiene un resultado (estado) de la limpieza.
Los estados posibles son FLUSHED, ERROR_INTERNAL, ERROR_NOT_AUTHORIZED, ERROR_VERSION_UPDATE_REQUIRED y ERROR_TIMEOUT. Especifica el tiempo de espera como una cantidad arbitraria de milisegundos.
GameServices
GameServices()=delete
IsAuthorized
bool IsAuthorized()
Te permite comprobar de forma explícita el estado de autorización actual.
Se recomienda a los usuarios de SDK que se registren para las devoluciones de llamada de AUTH_ACTION_* a fin de controlar los cambios de estado de autorización, en lugar de realizar sondeos.
Tablas de clasificación
LeaderboardManager & Leaderboards()
Proporciona una referencia al objeto LeaderboardManager que se usa para acceder a los logros y manipularlos.
Tablas de clasificación
const LeaderboardManager & Leaderboards() const
Proporciona una referencia constante al objeto LeaderboardManager que se usa para acceder a los logros y manipularlos.
Jugadores
PlayerManager & Players()
Proporciona una referencia al objeto PlayerManager, que permite acceder a información sobre jugadores.
Jugadores
const PlayerManager & Players() const
Proporciona una referencia constante al objeto PlayerManager, que permite acceder a información sobre jugadores.
RealTimeMultiplayer
RealTimeMultiplayerManager & RealTimeMultiplayer()
Proporciona una referencia al objeto RealTimeMultiplayerManager, que permite el acceso a los métodos relacionados con RTMP.
RealTimeMultiplayer
const RealTimeMultiplayerManager & RealTimeMultiplayer() const
Proporciona una referencia constante al objeto RealTimeMultiplayerManager, que permite el acceso a los métodos relacionados con RTMP.
SignOut
void SignOut()
Inicia el proceso de cierre de sesión asíncrono.
Después de llamar a SignOut, no debes llamar a ninguna operación en GameServices hasta que recibas el OnAuthActionFinishedCallback que indica un cierre de sesión exitoso.
Instantáneas
SnapshotManager & Snapshots()
Proporciona una referencia al objeto SnapshotManager que se usa para acceder a las instantáneas y manipularlas.
Instantáneas
const SnapshotManager & Snapshots() const
Proporciona una referencia constante al objeto SnapshotManager que se usa para acceder a las instantáneas y manipularlas.
StartAuthorizationUI
void StartAuthorizationUI()
Abre un flujo de autorización de usuarios específico de la plataforma.
Estadísticas
StatsManager & Stats()
Proporciona una referencia al objeto StatsManager que se usa para acceder a las estadísticas del juego y los jugadores.
Estadísticas
const StatsManager & Stats() const
Proporciona una referencia constante al objeto StatsManager que se usa para acceder a las estadísticas del juego y los jugadores.
TurnBasedMultiplayer
TurnBasedMultiplayerManager & TurnBasedMultiplayer()
Proporciona una referencia al objeto TurnBasedMultiplayerManager, que permite el acceso a los métodos relacionados con TBMP.
TurnBasedMultiplayer
const TurnBasedMultiplayerManager & TurnBasedMultiplayer() const
Proporciona una referencia de constante al objeto TurnBasedMultiplayerManager, que permite el acceso a los métodos relacionados con TBMP.
Video
VideoManager & Video()
Proporciona una referencia al objeto VideoManager, que permite el acceso a los métodos relacionados con el video.
Video
const VideoManager & Video() const
Proporciona una referencia constante al objeto VideoManager, que permite el acceso a los métodos relacionados con el video.
~GameServices
~GameServices()