假设我们想拥有一个管理用户帐户的iOS游戏的自定义后端,并允许用户相互发送对象,但我们不希望让用户真正为我们的游戏创建一个专用的useraccount 。可以简单地将playerID用于用户管理,但这不安全。有没有办法使用本地游戏中心身份验证来在自定义Web服务上进行身份验证?
目前我在思考游戏“口袋青蛙”如何让玩家向游戏中心朋友发送礼物。 Gamecenter似乎没有提供这种功能所以我假设它们使用自定义后端,但是这样的后端如何验证播放器呢?
答案 0 :(得分:1)
我不能确定这是Pocket Frogs(PF)是怎么做到的,但基于这样一个事实,即只有玩过PF的游戏中心(GC)朋友出现在邻居名单上,我认为它可能有效像这样:
当玩家首次开始游戏时,他们会从PF后端获得一个用户ID(比如32位int),这是本地存储的。一旦玩家拥有此ID,就可以将其存储在GKScore context
属性下的某个GC排行榜中,而不是value
。据我所知,PF会立即自动将所有玩家添加到所有排行榜中。
然后当另一位玩家想要发送礼物时,PF获得所有GC朋友的排行榜得分,如果他们有有效分数,则他们必须是PF玩家并且可以读取context
值以获得他们的PF身份。
这样PF后端获得正确的id,但不需要使用他们的GC id。
顺便说一下,我尝试了使用挑战来送礼物的想法,它可以奏效。有关我尝试过的游戏,请参阅http://www.lrgdigital.com/ofgame.html - 您必须先赢得比赛才能赠送。它的好处是,您可以将礼物发送给朋友列表中的任何人,而不仅仅是玩游戏的朋友,但也存在一些限制。
答案 1 :(得分:0)
没有。 Gamecenter使用苹果ID,这是出于明显原因的禁区。如果你研究游戏中心框架,就有办法让游戏中心的朋友。
在这里查看如何获得一系列朋友:Game Center Friend List