2012-03-29 63 views
-4

我有一个NSUserDefault,它只是存储数据库是否已配置。但是,删除应用程序后,重新安装nsuserdefault似乎仍然存在?NSUserDefaults是整个设备的全局还是应用程序

NSString *dbIsConfigured = [[NSUserDefaults standardUserDefaults] stringForKey:@"dbIsConfigured"]; 
+0

当你想保存少量的数据,如高分,登录信息和程序状态。 保存到NSUserDefaults非常好,因为它不需要任何特殊的数据库知识。所以,如果你不想为你的应用程序提供SQLite3数据库,那么这就是要走的路。它只在应用程序内。 – akk 2012-03-29 10:53:28

回答

4

它仅适用于本应用程序。其他应用程序无法访问该应用程序。

从苹果文档NSUserDefaults

沙盒考虑

沙盒应用程序无法访问或修改偏好任何其他应用程序。 (例如,如果使用addSuiteNamed方法添加其他应用程序的域名,则无法访问该应用程序的首选项。)

试图访问或修改其他应用程序的首选项不会导致错误,但是当您确实,Mac OS X实际上读取和写入位于应用程序容器中的文件,而不是其他应用程序的实际首选项文件。

+2

有了多个应用程序,您可以通过钥匙串与公司/开发人员的姓名共享设置。但只有您/贵公司制作的应用才能参与。 – JoePasq 2012-03-29 10:49:24

相关问题