gpg:: GameServices
#include <game_services.h>
Punkt wyjścia do interakcji z Grami Google Play.
Podsumowanie
Cykl życia usług gier
Instancja klasy GameServices jest tworzona za pomocą klasy GameServices::Builder. Po utworzeniu instancja nie jest zalogowana w usługach gier (to znaczy, że IsAuthorized() zwraca wartość false). W tle inicjowana jest dyskretna próba logowania, która może się udać, jeśli użytkownik był zalogowany na koniec poprzedniej sesji. Do czasu zakończenia tej próby logowania każdy interfejs uwierzytelniania użytkownika (np. przyciski logowania lub wylogowania) powinien być wyłączony lub ukryty.
Po zakończeniu tej cichej próby logowania otrzymasz powiadomienie o wywołaniu zwrotnym OnAuthActionFinished dla instancji GameServices (zarejestrowanej w ramach GameServices::Builder::SetOnAuthActionFinished). Jeśli argumenty wywołania zwrotnego wskazują udaną próbę logowania, można założyć, że instancja jest połączona z usługami gier (tzn. IsAuthorized() zwraca wartość prawda) i należy włączyć interfejs wylogowania. Jeśli argument wywołania zwrotnego odzwierciedla nieudaną próbę logowania, interfejs logowania powinien być włączony.
Jawne wylogowanie się za pomocą metody SignOut() należy wywoływać tylko na żądanie użytkownika. Spowoduje to przejście do stanu wylogowania. Zakończenie tego przejścia jest wskazywane przez wywołanie wywołania zwrotnego OnAuthActionFinished. Do czasu wywołania tego wywołania zwrotnego nie należy wywoływać innych interfejsów API GameServices (w tym StartAuthorizationUI()).
Po zniszczeniu instancji GameServices będzie ona blokowana do momentu, gdy nie będzie żadnych oczekujących operacji, co pozwoli uniknąć utraty danych. Jeśli takie działanie związane z blokowaniem nie jest pożądane, należy wykonać wywołanie Flush(), a instancja GameServices powinna pozostać aktywna do chwili zakończenia działania funkcji Flush().
Aby GameServices działał prawidłowo na Androidzie w wersjach starszych niż 4.0, aktywność będąca właścicielem musi wywoływać wywołania zwrotne cyklu życia. Zobacz AndroidSupport.
Konstruktorzy i niszczyciele |
|
---|---|
GameServices()
|
|
~GameServices()
|
Typy publiczne |
|
---|---|
FlushCallback
|
typedefstd::function< void(FlushStatus)>
Definiuje typ wywołania zwrotnego, który otrzymuje wynik (stan) operacji Flush. |
Funkcje publiczne |
|
---|---|
Achievements()
|
Zawiera odniesienie do obiektu AchievementManager używanego do uzyskiwania dostępu do osiągnięć i zarządzania nimi.
|
Achievements() const
|
const AchievementManager &
Udostępnia stałe odwołanie do obiektu AchievementManager używanego do uzyskiwania dostępu do osiągnięć i zarządzania nimi.
|
Events()
|
Zawiera odwołanie do obiektu EventManager używanego do uzyskiwania dostępu do zdarzeń i manipulowania nimi.
|
Events() const
|
const EventManager &
Udostępnia stałe odwołanie do obiektu EventManager używanego do uzyskiwania dostępu do zdarzeń i manipulowania nimi.
|
Flush(FlushCallback callback)
|
void
Asynchronicznie opróżnia główną kolejkę wysyłania i zwraca stan opróżniania do podanego wywołania FlushCallback.
|
FlushBlocking()
|
Synchronicznie spłukiwa i otrzymuje wynik (stan) czyszczenia.
|
FlushBlocking(Timeout timeout)
|
Synchronicznie spłukiwa i otrzymuje wynik (stan) czyszczenia.
|
IsAuthorized()
|
bool
Umożliwia bezpośrednie sprawdzenie bieżącego stanu autoryzacji.
|
Leaderboards()
|
Zawiera odniesienie do obiektu LeaderboardManager używanego do uzyskiwania dostępu do osiągnięć i zarządzania nimi.
|
Leaderboards() const
|
const LeaderboardManager &
Udostępnia stałe odwołanie do obiektu LeaderboardManager używanego do uzyskiwania dostępu do osiągnięć i zarządzania nimi.
|
Players()
|
Zawiera odniesienie do obiektu PlayerManager, który umożliwia dostęp do informacji o graczach.
|
Players() const
|
const PlayerManager &
Zapewnia stałe odniesienie do obiektu PlayerManager, które umożliwia dostęp do informacji o graczach.
|
RealTimeMultiplayer()
|
Zawiera odniesienie do obiektu RealTimeMultiplayerManager, który umożliwia dostęp do metod związanych z RTMP.
|
RealTimeMultiplayer() const
|
const RealTimeMultiplayerManager &
Zawiera stałe odwołanie do obiektu RealTimeMultiplayerManager, które umożliwia dostęp do metod związanych z RTMP.
|
SignOut()
|
void
Uruchamia proces asynchronicznego wylogowania.
|
Snapshots()
|
Zawiera odniesienie do obiektu SnapshotManager używanego do uzyskiwania dostępu do zrzutów i manipulowania nimi.
|
Snapshots() const
|
const SnapshotManager &
Zawiera stałe odwołanie do obiektu SnapshotManager używanego do uzyskiwania dostępu do zrzutów i do zarządzania nimi.
|
StartAuthorizationUI()
|
void
Wyświetla proces autoryzacji użytkownika specyficzny dla danej platformy.
|
Stats()
|
Zawiera odniesienie do obiektu StatsManager używanego do uzyskiwania dostępu do statystyk gry i graczy.
|
Stats() const
|
const StatsManager &
Zawiera stałe odwołanie do obiektu StatsManager używanego do uzyskiwania dostępu do statystyk gry i graczy.
|
TurnBasedMultiplayer()
|
Zawiera odniesienie do obiektu TurnBasedMultiplayerManager, który umożliwia dostęp do metod związanych z TBMP.
|
TurnBasedMultiplayer() const
|
const TurnBasedMultiplayerManager &
Zawiera stałe odwołanie do obiektu TurnBasedMultiplayerManager, który umożliwia dostęp do metod związanych z TBMP.
|
Video()
|
Zawiera odniesienie do obiektu VideoManager, który umożliwia dostęp do metod związanych z filmami.
|
Video() const
|
const VideoManager &
Zapewnia stałe odwołanie do obiektu VideoManager, które umożliwia dostęp do metod związanych z filmami.
|
Zajęcia |
|
---|---|
gpg:: |
Służy do tworzenia i konfigurowania instancji klasy GameServices. |
Typy publiczne
FlushCallback
std::function< void(FlushStatus)> FlushCallback
Definiuje typ wywołania zwrotnego, który otrzymuje wynik (stan) operacji Flush.
Używane w funkcji Flush().
Funkcje publiczne
Osiągnięcia
AchievementManager & Achievements()
Zawiera odniesienie do obiektu AchievementManager używanego do uzyskiwania dostępu do osiągnięć i zarządzania nimi.
Osiągnięcia
const AchievementManager & Achievements() const
Udostępnia stałe odwołanie do obiektu AchievementManager używanego do uzyskiwania dostępu do osiągnięć i zarządzania nimi.
Wydarzenia
EventManager & Events()
Zawiera odwołanie do obiektu EventManager używanego do uzyskiwania dostępu do zdarzeń i manipulowania nimi.
Wydarzenia
const EventManager & Events() const
Udostępnia stałe odwołanie do obiektu EventManager używanego do uzyskiwania dostępu do zdarzeń i manipulowania nimi.
Opróżnij
void Flush( FlushCallback callback )
Asynchronicznie opróżnia główną kolejkę wysyłania i zwraca stan opróżniania do podanego wywołania FlushCallback.
Możliwe stany: FLUSHED, ERROR_INTERNAL i ERROR_VERSION_UPDATE_REQUIRED.
FlushBlocking
FlushStatus FlushBlocking()
Synchronicznie spłukiwa i otrzymuje wynik (stan) czyszczenia.
Możliwe stany: FLUSHED, ERROR_INTERNAL, ERROR_NOT_AUTHORIZED, ERROR_VERSION_UPDATE_REQUIRED i ERROR_TIMEOUT. Pozostawienie nieokreślonego limitu czasu powoduje, że wywołanie tej funkcji jest równoważne wywołaniu funkcji FlushStatus FlushBlocking(Timeout) z czasem oczekiwania ustawionym na 10 lat.
FlushBlocking
FlushStatus FlushBlocking( Timeout timeout )
Synchronicznie spłukiwa i otrzymuje wynik (stan) czyszczenia.
Możliwe stany: FLUSHED, ERROR_INTERNAL, ERROR_NOT_AUTHORIZED, ERROR_VERSION_UPDATE_REQUIRED i ERROR_TIMEOUT. Określ czas oczekiwania w postaci dowolnej liczby milisekund.
GameServices
GameServices()=delete
IsAuthorized
bool IsAuthorized()
Umożliwia bezpośrednie sprawdzenie bieżącego stanu autoryzacji.
Zachęcamy użytkowników pakietu SDK do rejestrowania wywołań zwrotnych AUTH_ACTION_* w celu obsługi zmian stanu autoryzacji zamiast do odpytywania.
Tabele wyników
LeaderboardManager & Leaderboards()
Zawiera odniesienie do obiektu LeaderboardManager używanego do uzyskiwania dostępu do osiągnięć i zarządzania nimi.
Tabele wyników
const LeaderboardManager & Leaderboards() const
Udostępnia stałe odwołanie do obiektu LeaderboardManager używanego do uzyskiwania dostępu do osiągnięć i zarządzania nimi.
Gracze
PlayerManager & Players()
Zawiera odniesienie do obiektu PlayerManager, który umożliwia dostęp do informacji o graczach.
Gracze
const PlayerManager & Players() const
Zapewnia stałe odniesienie do obiektu PlayerManager, które umożliwia dostęp do informacji o graczach.
RealTimeMultiplayer
RealTimeMultiplayerManager & RealTimeMultiplayer()
Zawiera odniesienie do obiektu RealTimeMultiplayerManager, który umożliwia dostęp do metod związanych z RTMP.
RealTimeMultiplayer
const RealTimeMultiplayerManager & RealTimeMultiplayer() const
Zawiera stałe odwołanie do obiektu RealTimeMultiplayerManager, które umożliwia dostęp do metod związanych z RTMP.
SignOut
void SignOut()
Uruchamia proces asynchronicznego wylogowania.
Po wywołaniu SignOut nie należy wywoływać żadnych operacji w usłudze GameServices, dopóki nie otrzymasz metody OnAuthActionFinishedCallback informującej o udanym wylogowaniu.
Zrzuty
SnapshotManager & Snapshots()
Zawiera odniesienie do obiektu SnapshotManager używanego do uzyskiwania dostępu do zrzutów i manipulowania nimi.
Zrzuty
const SnapshotManager & Snapshots() const
Zawiera stałe odwołanie do obiektu SnapshotManager używanego do uzyskiwania dostępu do zrzutów i do zarządzania nimi.
StartAuthorizationUI
void StartAuthorizationUI()
Wyświetla proces autoryzacji użytkownika specyficzny dla danej platformy.
Statystyki
StatsManager & Stats()
Zawiera odniesienie do obiektu StatsManager używanego do uzyskiwania dostępu do statystyk gry i graczy.
Statystyki
const StatsManager & Stats() const
Zawiera stałe odwołanie do obiektu StatsManager używanego do uzyskiwania dostępu do statystyk gry i graczy.
TurnBasedMultiplayer
TurnBasedMultiplayerManager & TurnBasedMultiplayer()
Zawiera odniesienie do obiektu TurnBasedMultiplayerManager, który umożliwia dostęp do metod związanych z TBMP.
TurnBasedMultiplayer
const TurnBasedMultiplayerManager & TurnBasedMultiplayer() const
Zawiera stałe odwołanie do obiektu TurnBasedMultiplayerManager, który umożliwia dostęp do metod związanych z TBMP.
Wideo
VideoManager & Video()
Zawiera odniesienie do obiektu VideoManager, który umożliwia dostęp do metod związanych z filmami.
Wideo
const VideoManager & Video() const
Zapewnia stałe odwołanie do obiektu VideoManager, które umożliwia dostęp do metod związanych z filmami.
~Usługi gier
~GameServices()