gpg:: GameServices
#include <game_services.h>
Il punto di partenza per interagire con Google Play Giochi.
Riepilogo
Ciclo di vita dei servizi per i giochi
Un'istanza della classe GameServices viene creata tramite GameServices::Builder. Una volta creata, l'istanza inizialmente non ha eseguito l'accesso ai Servizi di giochi (in altre parole, IsAuthorized() restituisce il valore false). Un tentativo di accesso silenzioso viene avviato in background e potrebbe avere esito positivo se un utente ha eseguito l'accesso al termine di una sessione precedente. Fino al completamento di questo tentativo di accesso automatico, qualsiasi interfaccia utente di autenticazione utente (ad esempio, i pulsanti di accesso e/o uscita) dovrebbe essere disattivata o nascosta.
Al termine di questo tentativo di accesso silenzioso, verrà inviata una notifica al callback OnAuthActionFinished per l'istanza GameServices (registrata con GameServices::Builder::SetOnAuthActionFinished). Se gli argomenti di callback riflettono un tentativo di accesso riuscito, si può presumere che l'istanza sia connessa ai servizi di giochi (in altre parole, IsAuthorized() restituirà true) e l'interfaccia utente di uscita deve essere abilitata. Se l'argomento di callback riflette un tentativo di accesso non riuscito, la UI di accesso deve essere abilitata.
La disconnessione esplicita tramite il metodo SignOut() deve essere richiamata solo su richiesta dell'utente. Questa operazione richiede la transizione a uno stato disconnesso. Il completamento di questa transizione è indicato dalla chiamata del callback OnAuthActionFinished. Finché non verrà richiamato il callback, non dovresti chiamare altre API GameServices (inclusa StartAuthorizationUI()).
Quando un'istanza GameServices viene distrutta, viene bloccata fino a quando non ci sono operazioni in attesa per evitare la perdita di dati. Se questo comportamento di blocco in caso di distruzione non è desiderato, è necessario inviare una funzione Flush() e l'istanza GameServices deve essere mantenuta attiva fino al completamento di Flush().
Affinché GameServices funzioni correttamente sulle versioni di Android precedenti alla 4.0, l'attività proprietaria deve chiamare i callback del ciclo di vita. Vedi AndroidSupport.
Costruttori e distruttori |
|
---|---|
GameServices()
|
|
~GameServices()
|
Tipi pubblici |
|
---|---|
FlushCallback
|
typedefstd::function< void(FlushStatus)>
Definisce un tipo di callback che riceve il risultato (stato) di un'operazione di svuotamento. |
Funzioni pubbliche |
|
---|---|
Achievements()
|
Fornisce un riferimento all'oggetto AchievementManager utilizzato per accedere e modificare i risultati.
|
Achievements() const
|
const AchievementManager &
Fornisce un riferimento costante all'oggetto AchievementManager utilizzato per accedere e modificare i risultati.
|
Events()
|
Fornisce un riferimento all'oggetto EventManager utilizzato per accedere agli eventi e manipolarli.
|
Events() const
|
const EventManager &
Fornisce un riferimento const all'oggetto EventManager utilizzato per accedere agli eventi e manipolarli.
|
Flush(FlushCallback callback)
|
void
Scarica in modo asincrono la coda di invio principale e restituisce lo stato dello svuotamento al FlushCallback fornito.
|
FlushBlocking()
|
Esegue il lavaggio in modo sincrono e ottiene il risultato (stato) dello svuotamento.
|
FlushBlocking(Timeout timeout)
|
Esegue il lavaggio in modo sincrono e ottiene il risultato (stato) dello svuotamento.
|
IsAuthorized()
|
bool
Consente di controllare esplicitamente lo stato di autorizzazione attuale.
|
Leaderboards()
|
Fornisce un riferimento all'oggetto LeaderboardManager utilizzato per accedere e modificare i risultati.
|
Leaderboards() const
|
const LeaderboardManager &
Fornisce un riferimento costante all'oggetto LeaderboardManager utilizzato per accedere e modificare i risultati.
|
Players()
|
Fornisce un riferimento all'oggetto PlayerManager, che consente di accedere alle informazioni sui player.
|
Players() const
|
const PlayerManager &
Fornisce un riferimento costante all'oggetto PlayerManager, che consente di accedere alle informazioni sui player.
|
RealTimeMultiplayer()
|
Fornisce un riferimento all'oggetto RealTimeMultiplayerManager, che consente l'accesso ai metodi correlati a RTMP.
|
RealTimeMultiplayer() const
|
const RealTimeMultiplayerManager &
Fornisce un riferimento costante all'oggetto RealTimeMultiplayerManager, che consente l'accesso ai metodi correlati a RTMP.
|
SignOut()
|
void
Avvia la procedura di disconnessione asincrona.
|
Snapshots()
|
Fornisce un riferimento all'oggetto SnapshotManager utilizzato per accedere e gestire gli snapshot.
|
Snapshots() const
|
const SnapshotManager &
Fornisce un riferimento costante all'oggetto SnapshotManager utilizzato per accedere e gestire gli snapshot.
|
StartAuthorizationUI()
|
void
Consente di aprire un flusso di autorizzazione dell'utente specifico della piattaforma.
|
Stats()
|
Fornisce un riferimento all'oggetto StatsManager utilizzato per accedere alle statistiche di partite e giocatori.
|
Stats() const
|
const StatsManager &
Fornisce un riferimento costante all'oggetto StatsManager utilizzato per accedere alle statistiche di gioco e giocatori.
|
TurnBasedMultiplayer()
|
Fornisce un riferimento all'oggetto TurnBasedMultiplayerManager, che consente l'accesso ai metodi correlati a TBMP.
|
TurnBasedMultiplayer() const
|
const TurnBasedMultiplayerManager &
Fornisce un riferimento costante all'oggetto TurnBasedMultiplayerManager, che consente l'accesso ai metodi correlati a TBMP.
|
Video()
|
Fornisce un riferimento all'oggetto VideoManager, che consente l'accesso ai metodi relativi ai video.
|
Video() const
|
const VideoManager &
Fornisce un riferimento costante all'oggetto VideoManager, che consente l'accesso ai metodi relativi ai video.
|
Corsi |
|
---|---|
gpg:: |
Utilizzato per creare e configurare un'istanza della classe GameServices. |
Tipi pubblici
FlushCallback
std::function< void(FlushStatus)> FlushCallback
Definisce un tipo di callback che riceve il risultato (stato) di un'operazione di svuotamento.
Utilizzato in Flush().
Funzioni pubbliche
Obiettivi
AchievementManager & Achievements()
Fornisce un riferimento all'oggetto AchievementManager utilizzato per accedere e modificare i risultati.
Obiettivi
const AchievementManager & Achievements() const
Fornisce un riferimento costante all'oggetto AchievementManager utilizzato per accedere e modificare i risultati.
Eventi
EventManager & Events()
Fornisce un riferimento all'oggetto EventManager utilizzato per accedere agli eventi e manipolarli.
Eventi
const EventManager & Events() const
Fornisce un riferimento const all'oggetto EventManager utilizzato per accedere agli eventi e manipolarli.
Svuota
void Flush( FlushCallback callback )
Scarica in modo asincrono la coda di invio principale e restituisce lo stato dello svuotamento al FlushCallback fornito.
Gli stati possibili sono: FLUSHED, ERROR_INTERNAL e ERROR_VERSION_UPDATE_REQUIRED.
FlushBlocking
FlushStatus FlushBlocking()
Esegue il lavaggio in modo sincrono e ottiene il risultato (stato) dello svuotamento.
Gli stati possibili sono: FLUSHED, ERROR_INTERNAL, ERROR_NOT_AUTHORIZED, ERROR_VERSION_UPDATE_REQUIRED e ERROR_TIMEOUT. Se questo timeout non è specificato, la chiamata di funzione equivale a chiamare FlushStatus FlushBlocking(Timeout), con Timeout specificato su 10 anni.
FlushBlocking
FlushStatus FlushBlocking( Timeout timeout )
Esegue il lavaggio in modo sincrono e ottiene il risultato (stato) dello svuotamento.
Gli stati possibili sono: FLUSHED, ERROR_INTERNAL, ERROR_NOT_AUTHORIZED, ERROR_VERSION_UPDATE_REQUIRED e ERROR_TIMEOUT. Specifica il timeout come numero arbitrario di millisecondi.
GameServices
GameServices()=delete
IsAuthorized
bool IsAuthorized()
Consente di controllare esplicitamente lo stato di autorizzazione attuale.
I consumatori dell'SDK sono invitati a registrarsi per i callback AUTH_ACTION_* per gestire le modifiche dello stato di autorizzazione, anziché il polling.
Classifiche
LeaderboardManager & Leaderboards()
Fornisce un riferimento all'oggetto LeaderboardManager utilizzato per accedere e modificare i risultati.
Classifiche
const LeaderboardManager & Leaderboards() const
Fornisce un riferimento costante all'oggetto LeaderboardManager utilizzato per accedere e modificare i risultati.
Giocatori
PlayerManager & Players()
Fornisce un riferimento all'oggetto PlayerManager, che consente di accedere alle informazioni sui player.
Giocatori
const PlayerManager & Players() const
Fornisce un riferimento costante all'oggetto PlayerManager, che consente di accedere alle informazioni sui player.
RealTimeMultiplayer
RealTimeMultiplayerManager & RealTimeMultiplayer()
Fornisce un riferimento all'oggetto RealTimeMultiplayerManager, che consente l'accesso ai metodi correlati a RTMP.
RealTimeMultiplayer
const RealTimeMultiplayerManager & RealTimeMultiplayer() const
Fornisce un riferimento costante all'oggetto RealTimeMultiplayerManager, che consente l'accesso ai metodi correlati a RTMP.
SignOut
void SignOut()
Avvia la procedura di disconnessione asincrona.
Dopo aver chiamato SignOut, non devi chiamare alcuna operazione su GameServices finché non ricevi il messaggio OnAuthActionFinishedCallback che indica un'uscita riuscita.
Snapshot
SnapshotManager & Snapshots()
Fornisce un riferimento all'oggetto SnapshotManager utilizzato per accedere e gestire gli snapshot.
Snapshot
const SnapshotManager & Snapshots() const
Fornisce un riferimento costante all'oggetto SnapshotManager utilizzato per accedere e gestire gli snapshot.
StartAuthorizationUI
void StartAuthorizationUI()
Consente di aprire un flusso di autorizzazione dell'utente specifico della piattaforma.
Statistiche
StatsManager & Stats()
Fornisce un riferimento all'oggetto StatsManager utilizzato per accedere alle statistiche di partite e giocatori.
Statistiche
const StatsManager & Stats() const
Fornisce un riferimento costante all'oggetto StatsManager utilizzato per accedere alle statistiche di gioco e giocatori.
TurnBasedMultiplayer
TurnBasedMultiplayerManager & TurnBasedMultiplayer()
Fornisce un riferimento all'oggetto TurnBasedMultiplayerManager, che consente l'accesso ai metodi correlati a TBMP.
TurnBasedMultiplayer
const TurnBasedMultiplayerManager & TurnBasedMultiplayer() const
Fornisce un riferimento costante all'oggetto TurnBasedMultiplayerManager, che consente l'accesso ai metodi correlati a TBMP.
Video
VideoManager & Video()
Fornisce un riferimento all'oggetto VideoManager, che consente l'accesso ai metodi relativi ai video.
Video
const VideoManager & Video() const
Fornisce un riferimento costante all'oggetto VideoManager, che consente l'accesso ai metodi relativi ai video.
~GameServices
~GameServices()