gpt4 book ai didi

ios - 管理登录 IOS App 的用户

转载 作者:行者123 更新时间:2023-11-28 09:38:23 25 4
gpt4 key购买 nike

我是一名初级 IOS 开发人员,我发现很难理解 IOS APP 中用户管理的某些方面。

我已经将 facebook 和 google+ 添加到我的登录 View :

https://drive.google.com/file/d/0B_3MBkUrHOuRS2FEQW9rWUZkUkU/view?usp=sharing

Facebook 和 Google 将数据发回我的应用。

我应该怎么做才能在其他 View 中访问用户数据。如何通过我的应用程序管理所有这些用户数据。

希望能帮到你问候广告

顺便说一句:我习惯于快速工作,但我可以解释 OBJ-C

1º 编辑:---------------------------------------- ------------------------------

将我的登录 View 更改为:

 //MARK: Facebook Delegate Methods

func loginViewShowingLoggedInUser(loginView : FBLoginView!) {
println("User Logged In")
}

func loginViewFetchedUserInfo(loginView : FBLoginView!, user: FBGraphUser) {
// Store Facebook User Id
userAccountManager.setUserId(user.objectForKey("id") as String)
//Store Facebook User Name
userAccountManager.setUserName(user.name)
//Store Facebook E-mail account
userAccountManager.setUserMail(user.objectForKey("email") as String)
//MARK: FACEBOOK Session Token -------------------------------------------------------------<
userAccountManager.setUserToken(FBSession.activeSession().accessTokenData.accessToken)

userAccountManager.setUserLoggedIn(true)
}

func loginViewShowingLoggedOutUser(loginView : FBLoginView!) {
println("User Logged Out")
}

func loginView(loginView : FBLoginView!, handleError:NSError) {
println("Error: \(handleError.localizedDescription)")
}

//MARK: Google+ Methods

func finishedWithAuth(auth: GTMOAuth2Authentication!, error: NSError!) {
storeUserData()
}


func storeUserData(){
//Storing Google userId
userAccountManager.setUserId(signIn?.userID as String!)
//Storing Google User Name
userAccountManager.setUserName(signIn?.googlePlusUser.valueForKey("displayName") as String)
//Soting google e-mail account
userAccountManager.setUserMail(signIn?.userEmail as String!)
//MARK: GOOGLE Session Token -------------------------------------------------------------<
userAccountManager.setUserToken(signIn?.idToken as String!)

userAccountManager.setUserLoggedIn(true)
}

func didDisconnectWithError(error: NSError!) {
println("Google Error: \(error)")
}

并将数据存储在客户管理器中。

class AccountManager{

var userDefaults = NSUserDefaults()


func setUserId(userId : String){
userDefaults.setValue(userId, forKey: "USERID_KEY")
}

func setUserLoggedIn(loggedIn : Bool){
userDefaults.setBool(loggedIn, forKey: "USER_LOGGED_IN_KEY")
}

func setUserName(userName : String){
userDefaults.setValue(userName, forKey: "USERNAME_KEY")
}

func setUserMail(userMail : String){
userDefaults.setValue(userMail, forKey: "USERMAIL_KEY")
}

func setUserToken(userToken :String){
userDefaults.setValue(userToken, forKey: "USERTOKEN_KEY")
}

func getUserToken() -> String{
return userDefaults.valueForKey("USERTOKEN_KEY") as String
}

func isUserLoggedIn() -> Bool{
return userDefaults.valueForKey("USER_LOGGED_IN_KEY") as Bool
}

func getUserName() -> String {
return userDefaults.valueForKey("USERNAME_KEY") as String
}

func getUserMail() -> String {
return userDefaults.valueForKey("USERMAIL_KEY") as String
}
func getUserID() -> String {
return userDefaults.valueForKey("USERID_KEY") as String
}

我是否应该在需要用户数据时通过 segue 客户经理对象?

最佳答案

最好的办法是使用 NSUserDefaults 来保存用户数据,这样你就可以很容易地调用这些数据 Here is a short introduction

关于ios - 管理登录 IOS App 的用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28635432/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com