如何处理 iOS 应用程序中的保存数据?
How do I handle saving data in my iOS application?
我的应用程序需要保存一些关于用户的信息,因此我计划了一些方法来实现这个目标。我通过将这些信息保存在两个不同的位置来管理这一步,但我开始对此表示怀疑,让我更好地解释一下:
教程状态。这种信息支持(如您所料)教程状态,将用户完成的标记为已完成,以避免重复显示相同的教程。我处理这些信息的方式是保存到 NSUserDefaults
.
配置。这种信息包含用户配置(一种小配置文件)。这次我处理这些信息的方式是保存到 documentsPath
(下面的代码)中名为 "UserData.plist" 的文件中。
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsPath = [paths objectAtIndex:0];
NSString *PLISTPath = [documentsPath stringByAppendingPathComponent:@"UserData.plist"];
我正在创建应用程序以便为某些更新做好准备。在这些更新期间,我不希望用户丢失任何已保存的数据。我做错了什么或感到困惑吗?我应该将所有内容保存在 NSUserDefaults
中吗?
1) 使用NSUserDefaults
保存教程状态即可。不是很清楚 "user configuration"
是什么意思?它是一些敏感数据(密码、电子邮件)吗?如果是,那么将其保存在 plist
中而不加密是不好的。
2) User Defaults
应用更新时未删除
我的应用程序需要保存一些关于用户的信息,因此我计划了一些方法来实现这个目标。我通过将这些信息保存在两个不同的位置来管理这一步,但我开始对此表示怀疑,让我更好地解释一下:
教程状态。这种信息支持(如您所料)教程状态,将用户完成的标记为已完成,以避免重复显示相同的教程。我处理这些信息的方式是保存到
NSUserDefaults
.配置。这种信息包含用户配置(一种小配置文件)。这次我处理这些信息的方式是保存到
documentsPath
(下面的代码)中名为 "UserData.plist" 的文件中。NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *documentsPath = [paths objectAtIndex:0]; NSString *PLISTPath = [documentsPath stringByAppendingPathComponent:@"UserData.plist"];
我正在创建应用程序以便为某些更新做好准备。在这些更新期间,我不希望用户丢失任何已保存的数据。我做错了什么或感到困惑吗?我应该将所有内容保存在 NSUserDefaults
中吗?
1) 使用NSUserDefaults
保存教程状态即可。不是很清楚 "user configuration"
是什么意思?它是一些敏感数据(密码、电子邮件)吗?如果是,那么将其保存在 plist
中而不加密是不好的。
2) User Defaults
应用更新时未删除