游戏中心邀请立即失败

Yol*_*dan 5 multiplayer ios game-center swift

我们发送邀请时遇到问题GKGameCenterViewController.视图控制器打开就好了,但是当我们尝试向某人发送邀请时,它会立即失败.两个帐户都启用了游戏中心邀请,并通过GKGameViewController工作找到其他玩家.这是我们用来管理邀请的代码:

一旦GKLocalPlayer经过身份验证就调用此方法(从中调用身份验证GameViewController,此代码位于单独的Game Center管理类中):

internal func authenticationChanged() {
    if GKLocalPlayer.localPlayer().authenticated && !authenticated {
        print("Authentication changed: player authenticated")
        authenticated = true
        GKLocalPlayer.localPlayer().unregisterAllListeners()
        GKLocalPlayer.localPlayer().registerListener(self)
    } else {
        print("Authentication changed: player not authenticated")
        authenticated = false
        GKLocalPlayer.localPlayer().unregisterAllListeners()
    }
}
Run Code Online (Sandbox Code Playgroud)

这是收到邀请时应该调用的方法,尽管考虑到邀请一发送就失败就不会调用它.

public func player(player: GKPlayer, didAcceptInvite inviteToAccept: GKInvite) {
    //presentingViewController.dismissViewControllerAnimated(false, completion: nil)
    print("Accepted invite")
    let mmvc = GKMatchmakerViewController(invite: inviteToAccept)!
    mmvc.matchmakerDelegate = self
    presentingViewController.presentViewController(mmvc, animated: true, completion: nil)
}
Run Code Online (Sandbox Code Playgroud)

这两段代码都在符合GKMatchmakerViewControllerDelegate, GKGameCenterControllerDelegate, GKMatchDelegate, GKLocalPlayerListener委托和协议的同一个类中.

Ben*_*Ben 0

我遇到了完全相同的问题。问题似乎是我在应用程序设置中使用了新版本字符串 - 我将其恢复到当前在 iTunes Connect 中并与 Game Center 配合使用的版本,一切顺利!