如何在WatchOS 6独立应用上对Gamekit进行身份验证

时间:2019-09-03 01:42:25

标签: authentication watchkit game-center gamekit watchos-6

我正在创建我的第一个独立的WatchOS应用程序,但是在配置GameKit时遇到了麻烦。

我想验证用户身份并将他们的高分存储在一个简单的排行榜上。

我已在iTunes Connect上创建了该应用程序,在Gamekit功能中添加了高分排行榜,并在WatchKit Extension中添加了游戏中心功能。

这是我用来验证的代码:

override func didAppear() {
    authenticateLocalPlayer()
}

 func authenticateLocalPlayer() {
    let localPlayer = GKLocalPlayer.local

    localPlayer.authenticateHandler = {(error) -> Void in
        if (error != nil) {
            print((GKLocalPlayer.local.isAuthenticated))
        }
        else {
            print(error?.localizedDescription)
        }
    }
}

这是我得到的错误:

WatchKit Extension[533:492856] [Error] _authenticateUsingAlert:Failed to authenticate player with existing credentials.Error: Error Domain=GKErrorDomain Code=6 "The requested operation could not be completed because local player has not been authenticated." UserInfo={NSLocalizedDescription=The requested operation could not be completed because local player has not been authenticated.}

据我了解,此方法应该在手表上弹出一个身份验证窗口,以提示用户进行身份验证(如果他们尚未登录但未这样做)。有人有什么建议吗?谢谢

0 个答案:

没有答案