我正在尝试使用Unity中的facebook API来重新获得玩家得分。这是我正在使用的代码:
if(FB.IsLoggedIn){
FB.API("/me/scores", Facebook.HttpMethod.GET, scoreRetrived);
}
public void scoreRetrived(FBResult result){
var dict = Json.Deserialize(result.Text) as Dictionary<string,object>;
print (dict["score"]);
}
这是FBResult result.text:
的结果{“data”:[{“user”:{“id”:“1000015239203”,“name”:“AAA BBB”},“得分”:30,“应用”:{“名称”:“游戏”, “ID”: “2419296161993”}}]}
我怎样才能获得分数?!!!它对我不起作用有错误,因为Key不存在!
答案 0 :(得分:0)
如果将JSON数组的格式扩展为更易于阅读,则它将如下所示:
{
"data":[
{
"user": {
"id": "1000015239203",
"name": "AAA BBB"
},
"score": 30,
"application": {
"name": "game",
"id": "2419296161993"
}
}
]
}
因此,要访问乐谱,您需要
dict['data']['score']
或可能:
dict.data.score
取决于语言。
答案 1 :(得分:0)
这很痛苦,但我找到了解决方案:
public void scoreRetrived(FBResult result){
var dict = Json.Deserialize(result.Text) as Dictionary<string,object>;
List<object> data = dict["data"] as List<object>;
int playerScore = int.Parse(((Dictionary<string, object>)data.ToArray()[0])["score"].ToString());
}
哇终于哇!!