排行榜基于Facebook

时间:2012-09-15 23:17:22

标签: ios facebook opengraph leaderboard

我正在开发一款与Facebook集成的iOS平台游戏。

我搜索了谷歌,发现了许多不同的,令人困惑的和过时的教程。这就是我决定在这里问的原因。

我想展示玩家实际排名和玩家结果与朋友分数的比较。我需要分别为整个游戏和每个级别保留分数。

我熟悉分数连接和开放图形对象,但我还没有尝试实现任何东西。在开始之前,我想确定什么是最佳解决方案,以及如何做到这一点。 我的应用程序将只是iOS,我想避免创建Web应用程序。

  • 我可以在iOS应用程序上使用分数连接来存储整个游戏结果吗?最近有可能还是总是可能的?
  • Open Graph Object是一个很好的解决方案,可以为每个级别存储玩家最佳结果吗?
  • 是否可以在Open Graph中设置,获取和更改自定义对象?
  • 我可以在没有Facebook应用配置的服务器上的简单页面中定义图形对象吗?
  • 我是否必须创建Web应用程序才能实现目标?
  • 从Facebook上获取朋友列表并在我自己的服务上存储点是否更好?

2 个答案:

答案 0 :(得分:4)

Scores API可在移动设备和桌面设备上使用,就像图谱API的几乎每个部分一样。

您可以使用Facebook Scores API来管理您应用的“整体应用分数”(但不是针对各个级别的分数 - 用户在您的应用中一次只能获得一个分数)。请参阅此文档:http://developers.facebook.com/docs/guides/games/getting-started/#step4

您可以使用CUSTOM开放图表操作来说明用户何时达到每个级别的某个分数。

如果您要使用CUSTOM开放图形操作或对象,则需要转到应用程序的Facebook Developer设置并编辑“打开图形设置”以定义(http://developers.facebook.com)对象,操作和您将要使用的聚合。之后,您可以在自己的服务器上创建对象的多个实例(即,如果您的对象是Level,则可以创建一组级别),并使用Open Graph元标记标记简单页面,这些元素符合您定义的“Level”结构在脸书上。如果您正在使用Facebook的Scores API跟踪每个用户的单个分数(即整体应用分数),则无需执行此操作。

Scores API可用于画布应用程序和移动设备。

将分数存储在您自己的服务器上有很多原因,包括:

  • 不要求用户使用FB登录
  • 优化,如果您可以更快地加载分数而不必每次都调用Facebook
  • 安全性,如果您担心用户可以欺骗的客户端API调用
  • 拥有多个排行榜/分数,例如每个级别的排行榜,或跟踪历史分数。

但是,对于整体应用分数的基本实现,您绝对可以通过让Facebook存储和跟踪信息,以及您的应用在客户端进行所有呼叫来开始。

答案 1 :(得分:0)

以下是我在尝试做同样事情时发现的答案。

我可以在iOS应用程序上使用分数连接来存储整个游戏结果吗?最近可能还是总是可能的?

没有。至少目前,Facebook只接受每位游戏用户一个得分值。你可以使用Parse与Facebook一起获得多重分数。见https://parse.com/questions/i-want-to-know-if-parse-could-help-with-leaderboards-in-my-game

是否可以在Open Graph中设置,获取和更改自定义对象?

是。但是,我认为您每次想要进行更改时都需要提交新的应用更新。

我是否必须创建Web应用程序才能实现目标?

我不这么认为。您不需要Web服务器即可使用Graph API for Scores。