在我的游戏中,我不希望GameCenter登录弹出窗口在应用启动时自动出现。相反,我有一个GameCenter按钮,用户可以点击登录。当他们按下按钮时,会出现登录屏幕。GameCenter - 登录用户(如果他们已经输入了凭据)
但是,似乎在登录后再次启动应用程序时,用户仍然没有“登录”。他们仍然必须再次按下按钮,然后出现一个小横幅,标题为“欢迎回来,用户!”。有没有办法自动重新登录用户,而不必每次都按下按钮?我已经输入了我的凭证,为什么我必须再次验证身份?
这里是我的代码,当用户按下按钮:
self.authenticatePlayer()
而这里的身份验证方法:
func authenticatePlayer() {
let localPlayer = GKLocalPlayer.localPlayer()
localPlayer.authenticateHandler = {
(view, error) in
if view != nil {
self.view?.window?.rootViewController?.presentViewController(view!, animated: true, completion: nil)
} else {
}
}
}
我需要的东西,如果他们已经登录,可以迎回用户,但是如果他们还没有登录,不要求他们登录。
你可以尝试保存在按钮点击时在userDefault中输入名称,然后检查您的userDefault键是否在尝试重新登录后保存了任何用户名。 –
@TusharSharma我对你的意思很抱歉有点困惑。今天刚开始使用GameCenter。我很熟悉保存数据,虽然 – Brejuro
我mwan说当你的用户登录时,你可以保存它的状态。如果它再次登录,则再次检查它,然后相应地创建您的条件。 –