如何在升级的应用程序中检索NSUserDefault值?

时间:2014-03-11 05:55:55

标签: ios objective-c nsuserdefaults nsfilemanager

我正在制作视频应用。在那个我使用

创建多个视频路径
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);

NSString *documentsDirectory = [paths objectAtIndex:0];

NSString *string = [NSString stringWithFormat:@"Video%@.mov",[NSDate date]];

NSString *videoPath =  [documentsDirectory stringByAppendingPathComponent:string];

NSURL *url = [NSURL fileURLWithPath:videoPath];

并使用AVAssetExportSession导出。之后,我将每个导出器URL添加到NSUserDefault

`

NSMutableArray *archiveArray = [[[NSUserDefaults standardUserDefaults] objectForKey:@"video"] mutableCopy];

NSData *personEncodedObject = [NSKeyedArchiver archivedDataWithRootObject:outputURL];

[archiveArray addObject:personEncodedObject];

NSUserDefaults *userData = [NSUserDefaults standardUserDefaults];

[userData setObject:archiveArray forKey:@"video"];

[[NSUserDefaults standardUserDefaults] synchronize];

现在问题是当我发布我的应用程序的新版本时,我无法访问NSUserdefault中以前存储的视频网址。

1 个答案:

答案 0 :(得分:1)

NSUserdefault由iOS维护,您无需担心更新应用版本,

如果您在dafaults中保存了一些数据,它将在您更新的应用版本中保持不变。