用于登录用户数据的核心数据与NSUserDefaults

Geo*_*rgi 5 core-data nsuserdefaults ios

我有一个应用程序,我已经使用Core Data来存储大量的商店,用户可以在登录后查看.我目前正在实现应用程序的登录部分,我查看了许多相关问题.他们中的大多数建议NSUserDefaults用于存储非敏感用户数据.我打算存储名字,姓氏,电子邮件,个人资料图片和地址等内容.该名单可能会在未来增长.我的问题是,entity在我的核心数据模型中创建用户以存储单个用户对象是一个有效的选项,或者这将是一个不好的做法,我应该只是用它NSUserDefaults?我很想使用Core Data,因为我已经设置了所有内容,并且不会给实现增加额外的复杂性.

nar*_*ner 3

我在开发最近的应用程序时遇到了与您非常相似的情况。我发现这NSUserDefaults是存储用户信息的更合适的解决方案,因为这就是它明确的用途。正如Apple 文档中所述,“NSUserDefaults 类提供了一个用于与默认系统交互的编程接口。默认系统允许应用程序自定义其行为以匹配用户\xe2\x80\x99s 首选项。\'

\n\n

根据我的经验,使用 NSUserDefaults 来存储用户信息而不是 Core Data 意味着代码要少得多。此外,您不必每次用户登录应用程序时都必须访问核心数据存储,从而产生开销。

\n\n

作为参考,我在学习在哪里使用 NSUserDefaults 时使用了这个这个。

\n

  • 我最终使用了 NSUserDefaults ,您提供的链接非常有用。谢谢! (2认同)