Game Service Android Unity SDK by firoozehcorporation - 4

MobileGames & ProjectsSDK

Firoozeh GameService Unity SDK For Android

Unknown VersionApache License 2.0Updated 2 days agoCreated on May 8th, 2019
Go to source

گیم سرویس

نسخه مخصوص آندروید

راه اندازی

قبل از راه اندازی گیم سرویس و همچنین برای استفاده از آن از اتصال کاربر به اینترنت اطمینان حاصل کنید.

سپس پلاگین گیم سرویس را از اینجا دریافت و آن را به صورت پکیج یونیتی به پروژه بازی خود اضافه کنید

اضافه کردن پکیج

اضافه کردن پکیج

پس از اضافه کردن و نمایش محتویات پکیج گزینه import را انتخاب کنید

حال از مسیر زیر باید دسترسی به شبکه را برای بازی خود فراهم کنید

File -> Build Settings -> Android -> Player Settings -> Other Settings -> Internet Access -> Required

اضافه کردن پکیج

:پس از اضافه کردن پکیج با دستور زیر می توانید به دو روش گیم سرویس دسترسی داشته باشید

1-InstanceType.Auto :

.می رود InstanceType.Native درصورتی که برنامه موبایلی گیم سرویس در دسترس نباشد به صورت اتوماتیک به حالت

توضیح: ابتدا وضعیت برنامه موبایلی گیم سرویس بررسی شده درصورتی که نصب نباشد از کاربر درخواست نصب داده میشود

می رود InstanceType.Native اگر کاربر برنامه را نصب نکرد به حالت

2-InstanceType.Native:

در این حالت نیاز به نصب برنامه موبایلی گیم سرویس نیست اما برخی از دستورات گیم سرویس در این حالت موجود نمی باشد

         var config = new GameServiceClientConfiguration
        .Builder(InstanceType.Auto)
            .SetClientId("mygame")
            .SetClientSecret("h31r1kjwy8lap7lnrwd3x7")
            .DownloadObbData("Your Data Tag")
            .IsLogEnable(true)
            .IsNotificationEnable(true)
            .CheckGameServiceInstallStatus(true)
            .CheckGameServiceOptionalUpdate(false)
            .Build();
        
        FiroozehGameService.ConfigurationInstance(config);
        FiroozehGameService.Run(OnFirstInit,Debug.LogError);

متد های دستور بالا
 public Builder SetClientId(string clientId){}
 public Builder SetClientSecret(string clientSecret){}

باید در پنل توسعه دهندگان گیم سرویس بازی خود را ثبت کنید clientSecret و clientId برای دریافت . پس از ورود به پنل خود بازی خود را اضافه کنید

برای اضافه کردن بازی خود نام بازی دسته بندی و توضیحی از بازی خود وارد کنید

همچنین باید یک شناسه خاص انگلیسی برای بازی خود وارد کنید

اضافه کردن بازی

اضافه کردن بازی

در این قسمت باید کلید های دسترسی که در مرحله قبل آن را از پنل توسعه دهندگان بدست اوردید را قرار دهید


1- SetObbDataTag

public Builder SetObbDataTag(string dataTag){}

با این دستور دیتای بازی که با تگ در پنل ثبت کرده اید دانلود می شود

ورودی ها

  • dataTag = تگ دیتای بازی که در پنل ثبت کرده اید


2- IsLogEnable

public Builder IsLogEnable(bool isEnable){}

با فعال کردن این قسمت می توانید لاگ ها را مشاهده کنید برای دیباگ کردن برنامه مناسب است


3- IsNotificationEnable

public Builder IsNotificationEnable(bool enable)}{}

با فعال کردن این قسمت گیم سرویس به صورت خودکار اعلاناتی را در میان بازی نمایش خواهد داد


4- CheckGameServiceInstallStatus

public Builder CheckGameServiceInstallStatus(bool check){}

با فعال کردن این قسمت وضعیت نصب برنامه موبایلی گیم سرویس در گوشی کاربر بررسی خواهد شد


5- CheckGameServiceOptionalUpdate

public Builder CheckGameServiceOptionalUpdate(bool check){}

با فعال کردن این قسمت بروز بودن برنامه موبایلی گیم سرویس بررسی خواهد شد


6- Build

public GameServiceClientConfiguration Build(){}

تنظیمات قرار گرفته در بالا را برای گیم سرویس آماده میکند


اجرای گیم سرویس

 FiroozehGameService.ConfigurationInstance(config);
 FiroozehGameService.Run(OnFirstInit,onError=>{});

تنظیمات انجام شده در بالا را به گیم سرویس داده سپس آن را اجرا میکنیم

onError خطاهای بخش

  • InvalidInputs = باشد NULL خالی یا clientSecret و clientId درصورتی که

  • GameServiceException = خطایی در بخش گیم سرویس به دلایل گوناگون رخ داده است

  • NetworkUnreachable = درصورتی که دستگاه کاربر به اینترنت دسترسی نداشته باشد

  • LoginFailed = درصورتی که خطایی در لاگین رخ بدهد

  • LoginDismissed = درصورتی که لاگین کردن در گیم سرویس توسط کاربر کنسل شود

  • UnreachableService = (درصورتی که گیم سرویس در دسترس نباشد (برای حل این مشکل دوباره گیم سرویس را راه اندازی کنید

  • Data_Download_Dismissed = (درصورتی که دانلود توسط کاربر لغو شود (فضای کافی برای دانلود نداشته باشد

  • Download_Error = درصورتی که خطایی در دانلود رخ دهد

  • datapack_notfound =قرار داده اید وجود نداشته باشد obbDataTag درصورتی که فایلی با نامی که در

  • User_banned = درصورتی که حساب کاربری شما محدود شده باشد

متد های گیم سرویس

پس از انجام فرایند بالا شما گیم سرویس را در اختیار دارید با استفاده از دستورات زیر می توانید از گیم سرویس استفاده کنید

.توجه: توابعی که درکنار آنها ( ***) قرار گرفته است ٬ تنها با برنامه موبایلی گیم سرویس صدا می خورند


FiroozehGameService.Instance.GetLeaderBoards(r=>{},e=>{});

FiroozehGameService.Instance.GetAchievements(r=>{},e=>{});

FiroozehGameService.Instance.SaveGame("SaveName","Save Des",null,"20",r=>{},e=>{});

FiroozehGameService.Instance.SubmitScore("LeaderBoardID",20,r=>{},e=>{});

FiroozehGameService.Instance.UnlockAchievement("Achievement ID",r=>{},e=>{});

FiroozehGameService.Instance.GetSaveGame<object>(r=>{},e=>{});

FiroozehGameService.Instance.GetLeaderBoardDetails("LeaderBoardID",r=>{},e=>{});

FiroozehGameService.Instance.ShowAchievementsUI(e=>{}); ***

FiroozehGameService.Instance.GetAppVersion=>{},e=>{}); ***

FiroozehGameService.Instance.ShowLeaderBoardsUI(e=>{}); ***

FiroozehGameService.Instance.GetUserData(r=>{},e=>{});

FiroozehGameService.Instance.RemoveLastSave(r=>{},e=>{});

FiroozehGameService.Instance.ShowSurveyUi(e=>{}); ***

FiroozehGameService.Instance.ShowGamePageUi(e=>{}); ***


1- GetLeaderBoards

public void GetLeaderBoards(DelegateCore.OnGetLeaderBoards callback, DelegateCore.OnError error)

با این دستور می توانید تمامی لیست مقایسه ای بازی خود را که در پنل ثبت کرده اید دریافت کنید

های شماست LeaderBoard لیستی از callback در این جا

به شما به صورت متی بازمیگردد error درصورتی که خطایی در دریافت رخ دهد در

error خطاهای بخش

  • UnreachableService = (درصورتی که گیم سرویس در دسترس نباشد (برای حل این مشکل دوباره گیم سرویس را راه اندازی کنید
  • NetworkUnreachable = درصورتی که دستگاه کاربر به اینترنت دسترسی نداشته باشد

2- GetAchievements

public void GetAchievements(DelegateCore.OnGetAchievement callback,DelegateCore.OnError error)

با این دستور می توانید تمامی لیست دستاورد های بازی خود را که در پنل ثبت کرده اید دریافت کنید

های شماست Achievement لیستی از callback در این جا

به شما به صورت متی بازمیگردد error درصورتی که خطایی در دریافت رخ دهد در

error خطاهای بخش

  • UnreachableService = (درصورتی که گیم سرویس در دسترس نباشد (برای حل این مشکل دوباره گیم سرویس را راه اندازی کنید
  • NetworkUnreachable = درصورتی که دستگاه کاربر به اینترنت دسترسی نداشته باشد

3- SaveGame

public void SaveGame(string saveGameName
            ,string saveGameDescription
            ,string saveGameCover
            ,object saveGameData
            , DelegateCore.OnSaveGame<SaveDetails> callback
            , DelegateCore.OnError error)

با این دستور می توانید بازی خود را سیو کنید

ورودی ها

  • saveGameName = نام سیو
  • saveGameDescription = توضیح سیو
  • saveGameCover = (باشد Base 64 کاور سیو (کاور باید حتما به فرم
  • saveGameData = سیو مورد نظر شما
  • callback = اطلاعات سیو
  • error = درصورت خطا به شما بازمیگردد

error خطاهای بخش

  • UnreachableService = (درصورتی که گیم سرویس در دسترس نباشد (برای حل این مشکل دوباره گیم سرویس را راه اندازی کنید
  • NetworkUnreachable = درصورتی که دستگاه کاربر به اینترنت دسترسی نداشته باشد
  • InvalidSaveImgFileSize = درصورتی که کاور سیو بیشتر از ۱۲۸ کیلو بایت باشد
  • InvalidSaveFileSize = درصورتی که سیو مورد نظر شما بیشتر از ۱۲۸ کیلو بایت باشد
  • InvalidInputs = باشد NULL در صورتی که یکی از ورودی ها خالی یا

4- SubmitScore
 public void SubmitScore(string leaderBoardId,
            int scoreValue,
            DelegateCore.OnCallback callback,
            DelegateCore.OnError error)

با این دستور می توانید با ایدی جدول های مقایسه ای که در پنل ثبت کرده اید امتیاز کاربر را در آن ثبت کنید

ورودی ها

  • leaderBoardId = ایدی جدول های مقایسه ای
  • scoreValue = (مقدار امتیاز (مقدار آن نباید از حداکثر مقدار ثبت شده در پنل بیشتر باشد
  • callback = نتیجه ثبت
  • error = درصورت خطا به شما بازمیگردد

error خطاهای بخش

  • UnreachableService = (درصورتی که گیم سرویس در دسترس نباشد (برای حل این مشکل دوباره گیم سرویس را راه اندازی کنید
  • NetworkUnreachable = درصورتی که دستگاه کاربر به اینترنت دسترسی نداشته باشد
  • InvalidInputs = باشد NULL خالی یا leaderBoardId در صورتی که
  • InvalidScore =منفی باشد scoreValue درصورتی که
  • leaderboard_notfound = جدول های مقایسه ای موجود نباشد leaderBoardId در صورتی که برای

5- UnlockAchievement

 public void UnlockAchievement(string achievementId, 
    DelegateCore.OnUnlockAchievement callback,
    DelegateCore.OnError error)

با این دستور می توانید با ایدی دستاورد که در پنل ثبت کرده اید آن دستاورد را برای بازیکن باز کنید

ورودی ها

  • achievementId = ایدی دستاورد
  • callback = (نتیجه بازکردن (دستاورد باز شده بازمیگردد
  • error = درصورت خطا به شما بازمیگردد

error خطاهای بخش

  • UnreachableService = (درصورتی که گیم سرویس در دسترس نباشد (برای حل این مشکل دوباره گیم سرویس را راه اندازی کنید
  • NetworkUnreachable = درصورتی که دستگاه کاربر به اینترنت دسترسی نداشته باشد
  • InvalidInputs = باشد NULL خالی یا achievementId در صورتی که
  • achievement_notfound = دستاوردی موجود نباشد achievementId در صورتی که برای

6- GetSaveGame

public void GetSaveGame<T>(DelegateCore.OnSaveGame<T>saveGameData, DelegateCore.OnError error)

با این دستور می توانید تمامی لیست دستاورد های بازی خود را که در پنل ثبت کرده اید دریافت کنید

کلاس سیو شماست saveGameData در این جا

به شما به صورت متی بازمیگردد error درصورتی که خطایی در دریافت رخ دهد در

error خطاهای بخش

  • UnreachableService = (درصورتی که گیم سرویس در دسترس نباشد (برای حل این مشکل دوباره گیم سرویس را راه اندازی کنید

  • NetworkUnreachable = درصورتی که دستگاه کاربر به اینترنت دسترسی نداشته باشد

  • savegame_notfound = در صورتی که سیو بازی وجود نداشته باشد


7- GetLeaderBoardDetails

public void GetLeaderBoardDetails(string leaderBoardId,
            DelegateCore.OnGetLeaderBoardDetails callback,
            DelegateCore.OnError error)

با این دستور می توانید با ایدی لیست مقایسه ای که در پنل ثبت کرده اید آن لیست مقایسه ای را دریافت کنید

ورودی ها

  • leaderBoardId = ایدی لیست مقایسه ای
  • callback = (نتیجه دریافت (لیست مقایسه ای بازمیگردد
  • error = درصورت خطا به شما بازمیگردد

error خطاهای بخش

  • UnreachableService = (درصورتی که گیم سرویس در دسترس نباشد (برای حل این مشکل دوباره گیم سرویس را راه اندازی کنید
  • NetworkUnreachable = درصورتی که دستگاه کاربر به اینترنت دسترسی نداشته باشد
  • InvalidInputs = باشد NULL خالی یا leaderBoardId در صورتی که
  • leaderboard_notfound = جدول های مقایسه ای موجود نباشد leaderBoardId در صورتی که برای

8- ShowAchievementsUI

public void ShowAchievementsUI(DelegateCore.OnError error)

با این دستور می توانید لیست دستاورد های بازی را به بازیکن نمایش دهید

ورودی ها

  • error = درصورت خطا به شما بازمیگردد

error خطاهای بخش

  • UnreachableService = (درصورتی که گیم سرویس در دسترس نباشد (برای حل این مشکل دوباره گیم سرویس را راه اندازی کنید
  • NetworkUnreachable = درصورتی که دستگاه کاربر به اینترنت دسترسی نداشته باشد

9- ShowLeaderBoardsUI

public void ShowLeaderBoardsUI(DelegateCore.OnError error)

با این دستور می توانید لیست های مقایسه ای بازی را به بازیکن نمایش دهید

ورودی ها

  • error = درصورت خطا به شما بازمیگردد

**error **خطاهای بخش

  • UnreachableService = (درصورتی که گیم سرویس در دسترس نباشد (برای حل این مشکل دوباره گیم سرویس را راه اندازی کنید
  • NetworkUnreachable = درصورتی که دستگاه کاربر به اینترنت دسترسی نداشته باشد

10- GetSDKVersion

public void GetAppVersion(DelegateCore.OnCallback version, DelegateCore.OnError error)

با این دستور می توانید نسخه فعلی برنامه گیم سرویس را دریافت کنید

ورودی ها

  • callback = (نتیجه دریافت (نسخه گیم سرویس بازمیگردد
  • error = درصورت خطا به شما بازمیگردد

error خطاهای بخش

  • UnreachableService = (درصورتی که گیم سرویس در دسترس نباشد (برای حل این مشکل دوباره گیم سرویس را راه اندازی کنید

11- GetUserData

 public void GetUserData(DelegateCore.OnGetUserData Data, DelegateCore.OnError error)

با این دستور می توانید اطلاعات بازیکن فعلی که بازی می کند را دریافت کنید

ورودی ها

  • Data = (نتیجه دریافت (کلاس یوزر برمیگردد
  • error = درصورت خطا به شما بازمیگردد

error خطاهای بخش

  • UnreachableService = (درصورتی که گیم سرویس در دسترس نباشد (برای حل این مشکل دوباره گیم سرویس را راه اندازی کنید
  • NetworkUnreachable = درصورتی که دستگاه کاربر به اینترنت دسترسی نداشته باشد

12- RemoveLastSave

public void RemoveLastSave(DelegateCore.OnCallback saveGameData, DelegateCore.OnError error)

با این دستور می توانید آخرین سیو کاربر فعلی را حذف کنید

ورودی ها

  • saveGameData = (بازمیگردد Done نتیجه (درصورت موفق بودن
  • error = درصورت خطا به شما بازمیگردد

error خطاهای بخش

  • UnreachableService = (درصورتی که گیم سرویس در دسترس نباشد (برای حل این مشکل دوباره گیم سرویس را راه اندازی کنید
  • NetworkUnreachable = درصورتی که دستگاه کاربر به اینترنت دسترسی نداشته باشد
  • savegame_notfound = در صورتی که سیو بازی وجود نداشته باشد

13- ShowSurveyUi

public void ShowSurveyUi(DelegateCore.OnError error)

با این دستور صفحه نظر سنجی نسبت به بازی شما باز می شود

ورودی ها

  • error = درصورت خطا به شما بازمیگردد

error خطاهای بخش

  • UnreachableService = (درصورتی که گیم سرویس در دسترس نباشد (برای حل این مشکل دوباره گیم سرویس را راه اندازی کنید
  • NetworkUnreachable = درصورتی که دستگاه کاربر به اینترنت دسترسی نداشته باشد

14- ShowGamePageUi

public void ShowGamePageUi(DelegateCore.OnError error)

با این دستور صفحه بازی شما در برنامه گیم سرویس باز می شود

ورودی ها

  • error = درصورت خطا به شما بازمیگردد

error خطاهای بخش

  • UnreachableService = (درصورتی که گیم سرویس در دسترس نباشد (برای حل این مشکل دوباره گیم سرویس را راه اندازی کنید
  • NetworkUnreachable = درصورتی که دستگاه کاربر به اینترنت دسترسی نداشته باشد

کتابخانه های استفاده شده


بازی های تستی

Show all projects by firoozehcorporation