保存应用程序的数据,如果我更新应用程序,不会丢失应用程序
问题描述:
如果我有应用程序的本地数据,则假设我存储游戏所有得分的本地高分。 如果我发布应用程序的更新,我会丢失所有数据。 我保存的数据使用这种方法:保存应用程序的数据,如果我更新应用程序,不会丢失应用程序
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *filename = [documentsDirectory stringByAppendingPathComponent:@"defaultStage.dat"];
char cstr[512]={0};
[filename getCString:cstr maxLength:512 encoding:NSASCIIStringEncoding];
defaultStage=1;
FILE *pFile=fopen(cstr, "wb");
// and save with fprintf
存在着保存数据的方式“永久”不失去的时候我重新安装或更新应用程序?
答
保存到文档目录不应该在更新时丢失数据,奇怪。它真的吗?至于删除和重新安装应用程序,无法在手机上本地保存数据(即在应用程序的沙箱外部,删除应用程序时会被删除)。您需要使用iCloud或远程Web服务器。
为了节省高分我建议使用NSUserDefaults,在更新应用程序时也不会被删除。
编辑:我猜你谈论的iOS,而不是OS X
所以不是NSArray的*路径= NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES);我可以使用:NSArray * paths = NSSearchPathForDirectoriesInDomains(NSUserDefaults,NSUserDomainMask,YES);? – sefiroths