这是this question的后续行动。如果您没有收到handleTurnEventForMatch:didBecomeActive:
的任何回调,请尝试答案。
在我的游戏中,我只是在某些时候收到转弯事件通知。但如果我回到matchMakerViewController
并重新加载匹配,状态总是正确的。
我的游戏在每个回合中多次上传转弯状态。有趣的是,似乎如果其他设备收到对手轮到的一个通知,则不太可能接收到同一回合的进一步通知。但是,这不是100%。
一般来说,我的互联网连接似乎运作良好。
任何可能导致此问题的想法?
答案 0 :(得分:8)
我终于找到了问题。
好吧,如果您使用GKTurnBasedMatchmakerViewController
,那么它会从您当前的代表处窃取委托。
它可能有类似的东西:
[GKTurnBasedEventHandler sharedTurnBasedEventHandler].delegate = self;
这非常有意义,因为viewcontroller需要在gamecenter发生更改时进行更新,因此它成为GKTurnBasedEventHandler
的委托。
如果你想将委托归还给你自己的对象,你应该把这一行:
[GKTurnBasedEventHandler sharedTurnBasedEventHandler].delegate = self;
GKTurnBasedMatchmakerViewControllerDelegate
协议中所有功能的最顶层。