在游戏中心沙盒中缺少邀请

时间:2013-02-06 04:05:29

标签: ios objective-c cocoa game-center gamekit

我遇到了Game Center最奇怪的行为。

我正在与GKTurnBasedMatch和朋友设置回合制匹配。本地播放器的身份验证工作完美。使用GKTurnBasedMatch类方法loadMatchesWithCompletionHandler:似乎明智地返回GKTurnBasedMatch个对象。要发起新的匹配并邀请游戏中心的朋友,我使用标准GKTurnBasedMatchmakerViewController

当我与GKTurnBasedMatchmakerViewController创建匹配时,对于游戏创建者,当showExistingMatches属性为YES时,它们会显示在那里。

但是,如果我使用GKTurnBasedMatchmakerViewController邀请其他玩家,则接收播放器永远不会收到邀请。没有游戏中心推送通知,没有(除了一次或两次,偶尔)GKTurnBasedMatchmakerViewController中带有“邀请”标题的游戏。

奇怪的是,如果发起用户随后结束了他们使用邀请创建的游戏,该玩家将收到“Game Over”游戏中心通知。

使用loadMatchesWithCompletionHandler:,返回的matches对邀请播放器有意义(playerID中的participant值更正,GKTurnBasedParticipantStatus更正participant 1}} s),但对于受邀玩家来说根本没有任何显示。

我正在使用两个独立的设备,两者都明确登录到Game Center的Sandbox模式,并且所有内容都在iTunes Connect中设置等。两个Game Center帐户都设置为接受邀请。

有人见过这样的事吗?

1 个答案:

答案 0 :(得分:2)

可能的解决方案:当邀请者第一次移动,并且发送了消息endTurnWithNextParticipants:turnTimeout:matchData:completionHandler:时,我没有在第一个参数中发送正确的参与者,因此转弯从未被设置为被邀请者。