我正在尝试让 Android 应用程序将高分发布到 Facebook,类似于 Facebook 上的《愤怒的小鸟》的做法(它显示在时间轴上,也显示在股票代码中)。请记住,该游戏仅在 Android 上运行,并且没有 FB Canvas 应用程序。
目前我发布高分所采取的步骤如下:
- 按下登录按钮时通过 FB 验证用户,仅请求publish_actions权限 -works
- 通过 FB SDK 调用“/me”来请求用户 ID,并将 ID 保存在变量中 -works
-
当用户按下“得分 100 分”时,通过 Facebook SDK 发送 POST 请求,代码如下:-有效(从调用中记录 true)
Bundle params = new Bundle();
params.putString("score", "100");
// appAccessToken is temporarily a constant
facebook.setAccessToken(appAccessToken);
String response = "null";
try {
response = facebook.request(userId + "/scores", params, "POST");
} catch (IOException e) {
e.printStackTrace();
}
// Logs true if successful
Log.d(TAG, response);
- 打开 Facebook 查看游戏的更新,但任何地方都没有显示任何内容,这与《愤怒的小鸟》不同,它会显示在您的时间线上并显示最高分 -失败(任何地方都没有任何高分记录
您可能需要更多信息:
- 应用程序类别设置为游戏
- 应用程序类型设置为 Web(本机不允许我正确发布新分数)
- 我尝试使用的用户是应用程序的所有者
- 在打开和关闭沙箱的情况下尝试了上述步骤
- 如果我打电话https://graph.facebook.com/USER_ID/scores https://graph.facebook.com/USER_ID/scores使用适当的 access_token 和用户 ID,我得到了之前发送的 100 分分数作为响应,因此分数发布似乎有效
问题是为什么它没有出现在提要/时间线/股票代码中的任何地方。我错过了什么吗?
根据文档 https://developers.facebook.com/docs/score/ and 官方教程 http://developers.facebook.com/blog/post/539/,您已经正确发布了您的分数。那么,请输入我们的下一个问题:为什么它没有显示在用户的股票代码或时间轴上?
答案是,游戏的手段愤怒的小鸟发布高分实际上是混合了评分机制和直接发布到用户的流。 Facebook控制故事类型和分数发布的分布 http://www.insidefacebook.com/2012/03/06/facebook-puts-social-game-score-stories-in-news-feed-module-asks-users-to-play-it-again/,因此不能保证您的应用程序在您每次向网站发布乐谱时都会生成新的故事项目。引用主要来源:
Facebook 表示,获得最多点击、点赞和关注的故事
评论将在动态消息和时间轴上得到更多分发。
幸运的是,如果用户允许,您可以采取追索权。如果你相信你的用户非常关心关于发布他们的高分,您可以请求许可直接发布到他们的信息流,并使用您自己的自定义消息来执行此操作。更多信息可以找到here https://stackoverflow.com/questions/8228242/how-to-post-highest-score-in-facebook-wall-android-facebook.
(附加参考 http://www.scirra.com/tutorials/58/how-to-make-a-facebook-game/page-4)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)