gpg::GameServices

#include <game_services.h>

נקודת ההתחלה לאינטראקציה עם Google Play Games.

סיכום

מחזור החיים של שירותי משחקים

מופע של המחלקה GameServices נוצר דרך GameServices::Builder. כשיוצרים את המכונה, בשלב הראשון היא לא מחוברת לשירותי המשחקים (כלומר, IsAuthorized() מחזירה FALSE). ניסיון כניסה שקט מופעל ברקע, וייתכן שהוא יצליח אם משתמש נכנס לחשבון בסוף סשן קודם. עד להשלמת ניסיון הכניסה השקט, יש להשבית או להסתיר כל ממשק משתמש לאימות משתמש (לדוגמה, לחצני כניסה ו/או יציאה).

אחרי ההשלמה של ניסיון הכניסה השקט, תישלח הודעה ל-OnAuthActionTerms של הקריאה החוזרת (callback) במופע של GameServices (שרשומה ב-GameServices::Builder::SetOnAuthActionFinished). אם הארגומנטים של הקריאה החוזרת (callback) משקפים ניסיון כניסה מוצלח, אפשר להניח שהמכונה מחוברת לשירותי משחקים (כלומר, IsAuthorized() תחזיר true), וממשק המשתמש ליציאה צריך להיות מופעל. אם ארגומנט הקריאה החוזרת משקף ניסיון כניסה שנכשל, יש להפעיל את ממשק המשתמש של הכניסה.

יש להפעיל יציאה מפורשת דרך השיטה SignOut() רק לפי בקשת המשתמש. תוצג בקשה למעבר למצב ללא חיבור לחשבון. השלמת המעבר הזה מצוינת על ידי הפעלה של הקריאה החוזרת (callback) של OnAuthActionFinish. עד שהקריאה החוזרת הזו תופעל, אין לקרוא לממשקי API אחרים של GameServices (כולל StartAuthorizationUI()).

כשמכונה של GameServices נהרסת, היא חסומה עד שאין פעולות בהמתנה כדי למנוע אובדן נתונים. אם ההתנהגות של 'חסימה בהשמדה' לא רצויה, צריך ליצור פונקציית Flush() ואת המופע של GameServices צריך להישאר במצב פעיל עד שפונקציית Flush() תושלם.

כדי ש-GameServices יפעלו בצורה תקינה בגרסאות Android שקודמות לגרסה 4.0, פעילות הבעלות חייבת להפעיל קריאה חוזרת (callback) במחזור החיים. לדף AndroidSupport

בונים והורסים

GameServices()
~GameServices()

סוגים ציבוריים

FlushCallback typedef
std::function< void(FlushStatus)>
מגדיר סוג של קריאה חוזרת (callback) שמקבל את התוצאה (סטטוס) של פעולת הרצה.

תפקידים ציבוריים

Achievements()
מספקת הפניה לאובייקט AchievementManager, המשמש לגישה להישגים ולטיפול בהם.
Achievements() const
מספק הפניה קבועה לאובייקט AchievementManager, המשמש לגישה אל הישגים ולטיפול בהם.
Events()
מספק הפניה לאובייקט EventManager, המשמש לגישה לאירועים ולביצוע מניפולציות.
Events() const
const EventManager &
מספק הפניה קבועה לאובייקט EventManager המשמש לגישה לאירועים ולביצוע מניפולציות.
Flush(FlushCallback callback)
void
מוחק באופן אסינכרוני את תור השליחה הראשי ומחזיר את הסטטוס של ה-FlushCallback שסופק.
FlushBlocking()
פועל באופן סינכרוני ומקבל תוצאה (סטטוס) של הניקוי.
FlushBlocking(Timeout timeout)
פועל באופן סינכרוני ומקבל תוצאה (סטטוס) של הניקוי.
IsAuthorized()
bool
מאפשרת לבדוק במפורש את מצב ההרשאה הנוכחי.
Leaderboards()
מספקת הפניה לאובייקט LeaderboardManager, המשמש לגישה להישגים ולטיפול בהם.
Leaderboards() const
מספק הפניה קבועה לאובייקט LeaderboardManager, המשמש לגישה להישגים ולטיפול בהם.
Players()
מספקת הפניה לאובייקט PlayerManager, שמאפשר גישה למידע על השחקנים.
Players() const
const PlayerManager &
מספק הפניה קבועה לאובייקט PlayerManager, שמאפשר גישה למידע על השחקנים.
RealTimeMultiplayer()
מספקת הפניה לאובייקט RealTimeMultiplayerManager, שמאפשר גישה לשיטות שקשורות ל-RTMP.
RealTimeMultiplayer() const
מספק הפניה קבועה לאובייקט RealTimeMultiplayerManager, שמאפשר גישה לשיטות הקשורות ל-RTMP.
SignOut()
void
התחלת תהליך היציאה האסינכרונית.
Snapshots()
מספק הפניה לאובייקט SnapshotManager המשמש לגישה אל תמונות מצב ולביצוע מניפולציות עליהן.
Snapshots() const
const SnapshotManager &
מספק הפניה קבועה לאובייקט SnapshotManager המשמש לגישה אל תמונות מצב ולטיפול בהן.
StartAuthorizationUI()
void
הצגת תהליך מתן הרשאות משתמש לפלטפורמה ספציפית.
Stats()
מספקת הפניה לאובייקט StatsManager המשמש לגישה לנתונים סטטיסטיים של משחקים ושחקנים.
Stats() const
const StatsManager &
מספק הפניה קבועה לאובייקט StatsManager המשמש לגישה לנתונים סטטיסטיים של משחקים ושחקנים.
TurnBasedMultiplayer()
מספקת הפניה לאובייקט TurnBasedMultiplayerManager, שמאפשר גישה לשיטות שקשורות ל-TBMP.
TurnBasedMultiplayer() const
מספק הפניה קבועה לאובייקט TurnBasedMultiplayerManager, שמאפשר גישה לשיטות שקשורות ל-TBMP.
Video()
מספקת הפניה לאובייקט VideoManager, שמאפשר גישה לשיטות שקשורות לסרטונים.
Video() const
const VideoManager &
מספק הפניה קבועה לאובייקט VideoManager, שמאפשר גישה לשיטות שקשורות לסרטונים.

מחלקות

gpg::GameServices::Builder

משמש ליצירה ולהגדרה של מופע של המחלקה GameServices.

סוגים ציבוריים

FlushCallback

std::function< void(FlushStatus)> FlushCallback

מגדיר סוג של קריאה חוזרת (callback) שמקבל את התוצאה (סטטוס) של פעולת הרצה.

משמש ב-Flush().

תפקידים ציבוריים

הישגים

AchievementManager & Achievements()

מספקת הפניה לאובייקט AchievementManager, המשמש לגישה להישגים ולטיפול בהם.

הישגים

const AchievementManager & Achievements() const 

מספק הפניה קבועה לאובייקט AchievementManager, המשמש לגישה אל הישגים ולטיפול בהם.

אירועים

EventManager & Events()

מספק הפניה לאובייקט EventManager, המשמש לגישה לאירועים ולביצוע מניפולציות.

אירועים

const EventManager & Events() const 

מספק הפניה קבועה לאובייקט EventManager המשמש לגישה לאירועים ולביצוע מניפולציות.

רצף

void Flush(
  FlushCallback callback
)

מוחק באופן אסינכרוני את תור השליחה הראשי ומחזיר את הסטטוס של ה-FlushCallback שסופק.

הסטטוסים האפשריים הם: FLUSHED , ERROR_INTERNAL ו-ERROR_VERSION_UPDATE_REQUIRED.

FlushBlocking

FlushStatus FlushBlocking()

פועל באופן סינכרוני ומקבל תוצאה (סטטוס) של הניקוי.

הסטטוסים האפשריים הם: FLUSHED, ERROR_INTERNAL, ERROR_NOT_AUTHORIZED, ERROR_VERSION_UPDATE_REQUIRED ו-ERROR_PERIOD. אם לא מציינים את הזמן הקצוב לתפוגה, הקריאה לפונקציה הזו זהה לקריאה לפונקציה FlushStatus FlushBlocking(Timeout), כאשר הזמן הקצוב לתפוגה מוגדר ל-10 שנים.

FlushBlocking

FlushStatus FlushBlocking(
  Timeout timeout
)

פועל באופן סינכרוני ומקבל תוצאה (סטטוס) של הניקוי.

הסטטוסים האפשריים הם: FLUSHED, ERROR_INTERNAL, ERROR_NOT_AUTHORIZED, ERROR_VERSION_UPDATE_REQUIRED ו-ERROR_PERIOD. צריך להגדיר את הזמן הקצוב לתפוגה כמספר שרירותי של אלפיות השנייה.

GameServices

 GameServices()=delete

IsAuthorized

bool IsAuthorized()

מאפשרת לבדוק במפורש את מצב ההרשאה הנוכחי.

מומלץ לצרכני SDK להירשם לקריאות חוזרות (callback) מסוג AUTH_ACTION_* כדי לטפל בשינויים במצב ההרשאה ולא בסקרים.

לוחות לידרבורד

LeaderboardManager & Leaderboards()

מספקת הפניה לאובייקט LeaderboardManager, המשמש לגישה להישגים ולטיפול בהם.

לוחות לידרבורד

const LeaderboardManager & Leaderboards() const 

מספק הפניה קבועה לאובייקט LeaderboardManager, המשמש לגישה להישגים ולטיפול בהם.

שחקנים

PlayerManager & Players()

מספקת הפניה לאובייקט PlayerManager, שמאפשר גישה למידע על השחקנים.

שחקנים

const PlayerManager & Players() const 

מספק הפניה קבועה לאובייקט PlayerManager, שמאפשר גישה למידע על השחקנים.

RealTimeMultiplayer

RealTimeMultiplayerManager & RealTimeMultiplayer()

מספקת הפניה לאובייקט RealTimeMultiplayerManager, שמאפשר גישה לשיטות שקשורות ל-RTMP.

RealTimeMultiplayer

const RealTimeMultiplayerManager & RealTimeMultiplayer() const 

מספק הפניה קבועה לאובייקט RealTimeMultiplayerManager, שמאפשר גישה לשיטות הקשורות ל-RTMP.

SignOut

void SignOut()

התחלת תהליך היציאה האסינכרונית.

אחרי קריאה ל-SignOut, לא כדאי לבצע פעולות ב-GameServices עד שמקבלים את OnAuthActionFinishCallback שמציין שיציאה מהחשבון בוצעה בהצלחה.

snapshots

SnapshotManager & Snapshots()

מספק הפניה לאובייקט SnapshotManager המשמש לגישה אל תמונות מצב ולביצוע מניפולציות עליהן.

snapshots

const SnapshotManager & Snapshots() const 

מספק הפניה קבועה לאובייקט SnapshotManager המשמש לגישה אל תמונות מצב ולטיפול בהן.

StartAuthorizationUI

void StartAuthorizationUI()

הצגת תהליך מתן הרשאות משתמש לפלטפורמה ספציפית.

נתונים סטטיסטיים

StatsManager & Stats()

מספקת הפניה לאובייקט StatsManager המשמש לגישה לנתונים סטטיסטיים של משחקים ושחקנים.

נתונים סטטיסטיים

const StatsManager & Stats() const 

מספק הפניה קבועה לאובייקט StatsManager המשמש לגישה לנתונים סטטיסטיים של משחקים ושחקנים.

TurnBasedMultiplayer

TurnBasedMultiplayerManager & TurnBasedMultiplayer()

מספקת הפניה לאובייקט TurnBasedMultiplayerManager, שמאפשר גישה לשיטות שקשורות ל-TBMP.

TurnBasedMultiplayer

const TurnBasedMultiplayerManager & TurnBasedMultiplayer() const 

מספק הפניה קבועה לאובייקט TurnBasedMultiplayerManager, שמאפשר גישה לשיטות שקשורות ל-TBMP.

וידאו

VideoManager & Video()

מספקת הפניה לאובייקט VideoManager, שמאפשר גישה לשיטות שקשורות לסרטונים.

וידאו

const VideoManager & Video() const 

מספק הפניה קבועה לאובייקט VideoManager, שמאפשר גישה לשיטות שקשורות לסרטונים.

~שירותי משחקים

 ~GameServices()