我正在尝试为我的应用程序制作 facebook 排行榜.. 但我不明白
为什么不向我的 facebook 测试用户页面发布 NEWSFEED 或任何其他信息?
我的源代码有什么问题吗?=(
[沙盒模式/3test用户尝试/没有错误]写权限OK。
获取当前分数是可以的。
评分后没有返回错误并且“FACEBOOK_NON_JSON_RESULT”= true;
[自我 FBRequestWritePermissions];
NSMutableDictionary* params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
[FBSession activeSession].accessTokenData.accessToken,@"access_token", [NSString stringWithFormat:@"%d", nScore], @"score",
nil];
NSLog(@"Access Token : %@",[FBSession activeSession].accessTokenData.accessToken);
NSLog(@"Fetching current score");
// Get the score, and only send the updated score if it's highter
[FBRequestConnection startWithGraphPath:[NSString stringWithFormat:@"/%llu/scores", _myData.idName] parameters:params HTTPMethod:@"GET" completionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
if (result && !error) {
int nCurrentScore = 0;
if ([[result objectForKey:@"data"]count] > 0) {
nCurrentScore = [[[[result objectForKey:@"data"] objectAtIndex:0] objectForKey:@"score"] intValue];
}
NSLog(@"Current score is %d", nCurrentScore);
if (nScore > nCurrentScore) {
NSLog(@"Posting new score of %d", nScore);
[FBRequestConnection startWithGraphPath:[NSString stringWithFormat:@"/%llu/scores", _myData.idName]
parameters:params
HTTPMethod:@"POST"
completionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
NSLog(@"Score posted:%@ \n\n %@ \n\n%@",result,error,_isPublishable==YES?@"YES":@"NO");
}];
}
else {
NSLog(@"Existing score is higher - not posting new score");
}
}
}];
Facebook教程说..
“过程很简单。每次玩家在游戏中获得分数,游戏都会发出 HTTP POST 请求 /USER_ID/scores 并带有用户 access_token。假设用户已授予 publish_actions 权限,他们的分数将发布到图表
从那里,Facebook 可以自动生成几个有趣的故事,包括玩家达到新的高分时的高分故事,以及玩家在游戏中超过朋友时的传球故事。”
但我不明白为什么不张贴到图表...?