NSUserDefaults - 应用程序启动用户的数据是否仍然存在?

时间:2011-01-25 07:08:41

标签: iphone cocoa nsuserdefaults

NSUserDefaults中存储的值是否针对特定用户登录?假设一个不同的用户在同一设备中登录该应用程序,他是否能够看到使用NSUserDefaults在同一设备中登录用户1时保存的持久数据?

2 个答案:

答案 0 :(得分:1)

是。虽然我不确定“登录同一设备上的应用程序”是什么意思,但是NSUserDefaults中存储的任何内容都可供其他人访问。您负责重置值,以便使用它的任何其他人都无法访问以前存储的值。

例如,在使用Facebook iPhone SDK时,您可以存储此人的访问令牌,这样他/她就不必再次登录。如果其他人在第一个人退出之前出现并使用该应用程序,则他/她可以访问第一个人的帐户。当此人从您的应用中退出Facebook时,您必须删除NSUserDefaults中的值,以便其他人无法访问此人的帐户。

希望这有帮助!

答案 1 :(得分:1)

如果您在NSUserDefault中保存任何内容,则可以通过密钥访问(保存相同)。 记录是不考虑的。无论您使用特定密钥输入什么,都可以访问它。

所以你可以说NSUserDefault中保存的值对所有用户都是持久的。