[英]Unity3D Facebook SDK Achievements
我正在尝试通过Facebook Unity SDK实现成就。
我希望有人可以对执行此操作所需的过程进行定性描述。
到目前为止,这是我所做的。
在此站点上创建一个成就文件夹,并创建一个测试成就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.