保存用户配置文件和持久性
Posted
技术标签:
【中文标题】保存用户配置文件和持久性【英文标题】:Saving user profil and persistency 【发布时间】:2015-02-11 21:06:26 【问题描述】:我想知道一种在身份验证后保存用户配置文件的简单而好方法。
我请求一个 http 请求,该请求将获取姓名、姓氏、邮件及其个人资料图片的用户。
姓名/用户名/邮件保存在哪里? NSUserDefault ?不,因为我希望如果 NSUserDefault 信息丢失,我可以在不强制 http 请求的情况下获取用户配置文件。所以我考虑过使用存档?但是图像呢?我们使用 UIImagePNG.. 方法将其转换为 NSData ?
所以,如果可能的话,我想要一些关于我想做什么的建议
谢谢!
【问题讨论】:
【参考方案1】:我认为 NSUserDefaults 是一个可行的选择。只有当用户卸载应用程序时,数据才会丢失。即使在更新后,所有数据仍可访问。当用户卸载应用程序时,所有数据无论如何都会丢失,您对此无能为力。
下面的示例实现(带有 getter 和 setter 函数):
// setter
func setLoggedIn()
userDefaults.setValue(1, forKey: "loggedIn")
userDefaults.synchronize()
// getter
func isLoggedIn() -> Bool
if let loggedIn: AnyObject = userDefaults.valueForKey("loggedIn")
return true
else
return false
或者用于存储例如用户的名字:
// setter
func setUserFirstName(val:String)
userDefaults.setValue(val, forKey: "userFirstName")
userDefaults.synchronize()
// getter
func getUserFirstName() -> AnyObject
if let val: AnyObject = userDefaults.valueForKey("userFirstName")
return val
else
return ""
希望这会有所帮助!
【讨论】:
【参考方案2】:您可以很容易地使用 plist,然后归档到文档目录。
此链接上有一个很好的教程,应该会有所帮助 plist tutorial
【讨论】:
以上是关于保存用户配置文件和持久性的主要内容,如果未能解决你的问题,请参考以下文章