在我的遊戲中,我不希望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說當你的用戶登錄時,你可以保存它的狀態。如果它再次登錄,則再次檢查它,然後相應地創建您的條件。 –