iTunes同步后的Dataloss

时间:2011-07-28 09:45:25

标签: iphone objective-c cocoa-touch itunes sync

我有一个应用程序,它将用户数据保存到文档目录中的文件中,如下所示:

NSLog(@"Saving myLibrary.dat...");
NSString *filePath = [[self documentsDirectory] stringByAppendingPathComponent:@"myLibrary.dat"];
BOOL succeed = [[NSKeyedArchiver archivedDataWithRootObject:myLibrary] writeToFile:filePath atomically:YES];
if (!succeed){
    NSLog(@"There was an error saving myLibrary.dat!");
}

和我的文件目录:

-(NSString*)documentsDirectory
{
    NSLog(@"documentsDirectory");
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
    NSString *documentsDirectory = [paths objectAtIndex:0]; // Get documents directory
    return documentsDirectory;
}

库dat保存myLibrary,它是一个带有许多其他NSMutableArrays或NSStrings的NSMutableArray。

我从来没有遇到任何问题,我的数据保存应用程序,但用户现在报告他的图书馆在进行iTunes同步后搞砸了(项目被复制或交换)。

我没有与iTunes同步设置任何同步功能,因此不知道他为什么遇到这个错误?

任何人都可以想到一个连接,或者只是必须在其他地方(在我的应用程序中)找到该错误并且用户可能只是偶然在iTune同步后遇到错误?

非常感谢任何想法!

1 个答案:

答案 0 :(得分:1)

尝试保存在NSUserDefaults而不是文件中。