在我的 iOS 回合制比赛中,我正在尝试接收通知并获取
public func player(_ player: GKPlayer, receivedTurnEventFor match: GKTurnBasedMatch, didBecomeActive: Bool)
被调用,没有成功。
我将我的视图模型注册到本地播放器
GKLocalPlayer.localPlayer().register(self)
我希望在其他玩家执行后触发
func endTurn(withNextParticipants nextParticipants: [GKTurnBasedParticipant], turnTimeout timeout: TimeInterval, match matchData: Data, completionHandler: ((Error?) -> Swift.Void)? = nil)
但没有成功。
如果我强制重新加载 matchData,那么我将获得第二个玩家刚刚提交的数据。所以 endTurn 工作正常。
有什么我做错了吗?
更新:所以我创建了一个新项目,复制了我所有的文件,仅启用了 Game Center 功能。
当开发它运行完美时,我连接了两个设备(具有不同的苹果 ID)。通知正在工作,Turnbasedlistener 正在触发。
我一发布它进行内部测试,它就停止工作了!!!