gpg:: خدمات بازی
#include <game_services.h>
نقطه شروع برای تعامل با بازی های Google Play.
خلاصه
چرخه حیات خدمات بازی
نمونه ای از کلاس GameServices از طریق GameServices::Builder ایجاد می شود. هنگام ایجاد، نمونه در ابتدا وارد سرویسهای بازی نمیشود (یعنی IsAuthorized() false را برمیگرداند. تلاش برای ورود به سیستم بیصدا در پسزمینه آغاز میشود و اگر کاربر در پایان جلسه قبلی وارد سیستم شده باشد، ممکن است موفق شود. تا تکمیل این تلاش برای ورود به سیستم بیصدا، هر رابط کاربری احراز هویت کاربر (به عنوان مثال، دکمههای ورود و/یا خروج) باید غیرفعال یا پنهان شود.
پس از اتمام این تلاش برای ورود به سیستم بیصدا، پاسخ تماس OnAuthActionFinished برای نمونه GameServices (ثبتشده در GameServices::Builder::SetOnAuthActionFinished ) اطلاع داده میشود. اگر آرگومانهای برگشت تماس منعکس کننده تلاش موفقیت آمیز برای ورود به سیستم باشند، میتوان فرض کرد که نمونه به سرویسهای بازی متصل است (یعنی IsAuthorized() true برمیگرداند)، و رابط کاربری خروج از سیستم باید فعال شود. اگر آرگومان برگشت تماس نشان دهنده تلاش ناموفق برای ورود به سیستم باشد، رابط کاربری ورود به سیستم باید فعال شود.
خروج صریح از طریق متد ()SignOut باید فقط در صورت درخواست کاربر فراخوانی شود. این درخواست انتقال به حالت خروج از سیستم را دارد. تکمیل این انتقال با فراخوانی پاسخ به تماس OnAuthActionFinished نشان داده می شود. تا زمانی که این بازخوانی فراخوانی نشود، دیگر APIهای GameServices (از جمله StartAuthorizationUI() ) نباید فراخوانی شوند.
هنگامی که یک نمونه GameServices تخریب می شود، تا زمانی که هیچ عملیات معلقی برای جلوگیری از از دست رفتن داده ها وجود نداشته باشد، مسدود می شود. اگر این رفتار block-on-destruction مورد نظر نیست، یک Flush() باید صادر شود و نمونه GameServices باید تا زمانی که Flush() کامل شود، زنده نگه داشته شود.
برای اینکه GameServices در نسخههای Android کمتر از 4.0 به درستی کار کند، Activity مالک باید تماسهای چرخه حیات را فراخوانی کند. به AndroidSupport مراجعه کنید.
سازندگان و ویرانگرها | |
---|---|
GameServices () | |
~GameServices () |
انواع عمومی | |
---|---|
FlushCallback | typedefstd::function< void( FlushStatus )> نوع برگشتی را تعریف می کند که نتیجه (وضعیت) یک عملیات Flush را دریافت می کند. |
توابع عمومی | |
---|---|
Achievements () | ارجاعی به شیء AchievementManager که برای دسترسی و دستکاری دستاوردها استفاده می شود، ارائه می دهد. |
Achievements () const | const AchievementManager & یک مرجع const به شی AchievementManager که برای دسترسی و دستکاری دستاوردها استفاده می شود، ارائه می دهد. |
Events () | ارجاعی به شی EventManager که برای دسترسی و دستکاری رویدادها استفاده می شود، ارائه می دهد. |
Events () const | const EventManager & یک مرجع const به شی EventManager که برای دسترسی و دستکاری رویدادها استفاده می شود، ارائه می دهد. |
Flush ( FlushCallback callback) | void به صورت ناهمزمان صف ارسال اصلی را فلاش می کند و وضعیت فلاش را به FlushCallback ارائه شده برمی گرداند. |
FlushBlocking () | به طور همزمان فلاش می شود و نتیجه (وضعیت) فلاش را می گیرد. |
FlushBlocking ( Timeout timeout) | به طور همزمان فلاش می شود و نتیجه (وضعیت) فلاش را می گیرد. |
IsAuthorized () | bool به شما امکان میدهد تا وضعیت مجوز فعلی را به صراحت بررسی کنید. |
Leaderboards () | ارجاعی به شی LeaderboardManager که برای دسترسی و دستکاری دستاوردها استفاده می شود، ارائه می دهد. |
Leaderboards () const | const LeaderboardManager & یک مرجع const به شی LeaderboardManager که برای دسترسی و دستکاری دستاوردها استفاده می شود، ارائه می دهد. |
Players () | ارجاعی به شی PlayerManager ارائه می دهد که امکان دسترسی به اطلاعات بازیکنان را فراهم می کند. |
Players () const | const PlayerManager & یک مرجع const به شی PlayerManager ارائه می دهد که امکان دسترسی به اطلاعات بازیکنان را فراهم می کند. |
RealTimeMultiplayer () | ارجاعی به شی RealTimeMultiplayerManager ارائه می دهد که امکان دسترسی به روش های مرتبط با RTMP را فراهم می کند. |
RealTimeMultiplayer () const | const RealTimeMultiplayerManager & یک مرجع const به شی RealTimeMultiplayerManager ارائه می دهد که امکان دسترسی به روش های مرتبط با RTMP را فراهم می کند. |
SignOut () | void فرآیند خروج ناهمزمان را آغاز می کند. |
Snapshots () | ارجاعی به شی SnapshotManager که برای دسترسی و دستکاری عکس های فوری استفاده می شود ارائه می دهد. |
Snapshots () const | const SnapshotManager & یک مرجع const به شی SnapshotManager که برای دسترسی و دستکاری عکس های فوری استفاده می شود، ارائه می دهد. |
StartAuthorizationUI () | void یک جریان مجوز کاربر برای پلتفرم خاص را به ارمغان می آورد. |
Stats () | ارجاعی به شی StatsManager که برای دسترسی به آمار بازی و بازیکن استفاده می شود، ارائه می دهد. |
Stats () const | const StatsManager & یک مرجع const به شی StatsManager که برای دسترسی به آمار بازی و بازیکن استفاده می شود، ارائه می دهد. |
TurnBasedMultiplayer () | ارجاعی به شی TurnBasedMultiplayerManager ارائه می دهد که امکان دسترسی به روش های مرتبط با TBMP را فراهم می کند. |
TurnBasedMultiplayer () const | const TurnBasedMultiplayerManager & یک مرجع const به شی TurnBasedMultiplayerManager ارائه می دهد که امکان دسترسی به روش های مرتبط با TBMP را فراهم می کند. |
Video () | ارجاعی به شی VideoManager ارائه می دهد که امکان دسترسی به روش های مرتبط با ویدئو را فراهم می کند. |
Video () const | const VideoManager & یک مرجع const به شی VideoManager ارائه می دهد که امکان دسترسی به روش های مرتبط با ویدئو را فراهم می کند. |
کلاس ها | |
---|---|
gpg:: GameServices:: Builder | برای ایجاد و پیکربندی نمونه ای از کلاس GameServices استفاده می شود. |
انواع عمومی
FlushCallback
std::function< void(FlushStatus)> FlushCallback
نوع برگشتی را تعریف می کند که نتیجه (وضعیت) یک عملیات Flush را دریافت می کند.
در Flush() استفاده می شود.
توابع عمومی
دستاوردها
AchievementManager & Achievements()
ارجاعی به شیء AchievementManager که برای دسترسی و دستکاری دستاوردها استفاده می شود، ارائه می دهد.
دستاوردها
const AchievementManager & Achievements() const
یک مرجع const به شی AchievementManager که برای دسترسی و دستکاری دستاوردها استفاده می شود، ارائه می دهد.
رویدادها
EventManager & Events()
ارجاعی به شی EventManager که برای دسترسی و دستکاری رویدادها استفاده می شود، ارائه می دهد.
رویدادها
const EventManager & Events() const
یک مرجع 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_TIMEOUT. نامشخص ماندن این مهلت زمانی، این فراخوانی تابع را با فراخوانی FlushStatus FlushBlocking (Timeout) برابر میکند، با 10 سال تعیین زمان.
FlushBlocking
FlushStatus FlushBlocking( Timeout timeout )
به طور همزمان فلاش می شود و نتیجه (وضعیت) فلاش را می گیرد.
وضعیتهای ممکن عبارتند از: FLUSHED، ERROR_INTERNAL، ERROR_NOT_AUTHORIZED، ERROR_VERSION_UPDATE_REQUIRED و ERROR_TIMEOUT. بازه زمانی را به صورت یک عدد دلخواه میلی ثانیه مشخص کنید.
خدمات بازی
GameServices()=delete
مجاز است
bool IsAuthorized()
به شما امکان میدهد تا وضعیت مجوز فعلی را به صراحت بررسی کنید.
به مصرفکنندگان SDK توصیه میشود به جای نظرسنجی، در تماسهای AUTH_ACTION_* ثبت نام کنند تا تغییرات وضعیت مجوز را مدیریت کنند.
تابلوهای امتیازات
LeaderboardManager & Leaderboards()
ارجاعی به شی LeaderboardManager که برای دسترسی و دستکاری دستاوردها استفاده می شود، ارائه می دهد.
تابلوهای امتیازات
const LeaderboardManager & Leaderboards() const
یک مرجع const به شی LeaderboardManager که برای دسترسی و دستکاری دستاوردها استفاده می شود، ارائه می دهد.
بازیکنان
PlayerManager & Players()
ارجاعی به شی PlayerManager ارائه می دهد که امکان دسترسی به اطلاعات بازیکنان را فراهم می کند.
بازیکنان
const PlayerManager & Players() const
یک مرجع const به شی PlayerManager ارائه می دهد که امکان دسترسی به اطلاعات بازیکنان را فراهم می کند.
RealTime Multiplayer
RealTimeMultiplayerManager & RealTimeMultiplayer()
ارجاعی به شی RealTimeMultiplayerManager ارائه می دهد که امکان دسترسی به روش های مرتبط با RTMP را فراهم می کند.
RealTime Multiplayer
const RealTimeMultiplayerManager & RealTimeMultiplayer() const
یک مرجع const به شی RealTimeMultiplayerManager ارائه می دهد که امکان دسترسی به روش های مرتبط با RTMP را فراهم می کند.
خروج از سیستم
void SignOut()
فرآیند خروج ناهمزمان را آغاز می کند.
پس از فراخوانی SignOut، تا زمانی که OnAuthActionFinishedCallback را دریافت نکنید، نباید هیچ عملیاتی را در GameServices فراخوانی کنید که نشان دهنده خروج موفقیت آمیز از سیستم است.
عکس های فوری
SnapshotManager & Snapshots()
ارجاعی به شی SnapshotManager که برای دسترسی و دستکاری عکس های فوری استفاده می شود، ارائه می دهد.
عکس های فوری
const SnapshotManager & Snapshots() const
یک مرجع const به شی SnapshotManager که برای دسترسی و دستکاری عکس های فوری استفاده می شود، ارائه می دهد.
StartAuthorizationUI
void StartAuthorizationUI()
یک جریان مجوز کاربر برای پلتفرم خاص را به ارمغان می آورد.
آمار
StatsManager & Stats()
ارجاعی به شی StatsManager که برای دسترسی به آمار بازی و بازیکن استفاده می شود، ارائه می دهد.
آمار
const StatsManager & Stats() const
یک مرجع const به شی StatsManager که برای دسترسی به آمار بازی و بازیکن استفاده می شود، ارائه می دهد.
TurnBasedMultiplayer
TurnBasedMultiplayerManager & TurnBasedMultiplayer()
ارجاعی به شی TurnBasedMultiplayerManager ارائه می دهد که امکان دسترسی به روش های مرتبط با TBMP را فراهم می کند.
TurnBasedMultiplayer
const TurnBasedMultiplayerManager & TurnBasedMultiplayer() const
یک مرجع const به شی TurnBasedMultiplayerManager ارائه می دهد که امکان دسترسی به روش های مرتبط با TBMP را فراهم می کند.
ویدئو
VideoManager & Video()
ارجاعی به شی VideoManager ارائه می دهد که امکان دسترسی به روش های مرتبط با ویدئو را فراهم می کند.
ویدئو
const VideoManager & Video() const
یک مرجع const به شی VideoManager ارائه می دهد که امکان دسترسی به روش های مرتبط با ویدئو را فراهم می کند.
~خدمات بازی
~GameServices()
جز در مواردی که غیر از این ذکر شده باشد،محتوای این صفحه تحت مجوز Creative Commons Attribution 4.0 License است. نمونه کدها نیز دارای مجوز Apache 2.0 License است. برای اطلاع از جزئیات، به خطمشیهای سایت Google Developers مراجعه کنید. جاوا علامت تجاری ثبتشده Oracle و/یا شرکتهای وابسته به آن است.
تاریخ آخرین بهروزرسانی 2024-11-12 بهوقت ساعت هماهنگ جهانی.