簡體   English   中英

Unity3D Facebook SDK成就

[英]Unity3D Facebook SDK Achievements

我正在嘗試通過Facebook Unity SDK實現成就。

我希望有人可以對執行此操作所需的過程進行定性描述。

到目前為止,這是我所做的。

  • 將Web構建托管在服務器上
  • 在此站點上創建一個成就文件夾,並創建一個測試成就html文件,如https://developers.facebook.com/blog/post/539/

    我的主要困惑是注冊成就和提出成就之間的區別。

注冊成就僅需要完成一次,如果需要,應該在哪里完成? 我是否需要統一創建一個腳本,以注冊在其余測試之前運行的游戲的所有成就? 另外,我不確定方法調用如何注冊和發布成就。 我的印象是我需要調用FB.API(字符串終結點,Facebook.HttpMethod,FacebookDelegate回調,字典formData)

但是我真的不確定輸入參數是什么。

到目前為止,這是我的嘗試(我很確定我使用的字符串端點錯誤)

private void RegisterAchievement()
{
    string achievement ="http://www.invadingspaces.com/unity/testing/Achievements/ach1.html";
    string appID = "999408935255000";
    string achievement_display_order = "1"; 

    string achievement_registration_URL = "https://graph.facebook.com/"+ appID + "/achievements";
    FB.API(achievement_registration_URL+","+"achievement="+ achievement+ "&display_order=" +achievement_display_order+ "&access_token=" + FB.AccessToken ,Facebook.HttpMethod.POST,null,null);
}

提前致謝。

我建議您查看一般的Facebook成就API: https//developers.facebook.com/docs/games/achievements/

您也可以先測試一下圖瀏覽器實際要放置的內容,然后再將其放入圖中。: https : //developers.facebook.com/tools/explorer

因此,例如,要創建一個新的成就,就是這樣:

var dict = new Dictionary<string,string>();
dict["achievement"] = "<URL_TO ACHIEVEMENT_HERE>";
FB.API(FB.AppId+"/achievements", Facebook.HttpMethod.POST, null, dict);

為了獲得所有游戲成就,它是:

FB.API(FB.AppId+"/achievements", Facebook.HttpMethod.GET);

然后授予玩家成就,就是這樣:

var dict = new Dictionary<string,string>();
dict["achievement"] = "<URL_TO ACHIEVEMENT_HERE>";
FB.API(FB.UserId+"/achievements", Facebook.HttpMethod.POST, null, dict);

為了使該玩家完成他們的成就,它是:

FB.API(FB.UserId+"/achievements", Facebook.HttpMethod.GET);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM