我有一个从服务器下载图像/上下文的应用程序。 将图像保存到/文档,上下文到数据库coredata。
假设我已经下载了所有数据(应用程序显示所有必要的数据(图像/上下文)),出于某种原因,我在testflight中上传了应用程序的新版本,然后在我的设备上更新应用程序当我运行应用程序时,它现在不会显示我在之前版本中下载的图像,但我仍然有上下文。所以我的问题是新构建删除了/ documents中的所有数据吗?如果是这样,我怎么还有我的上下文数据(数据库coredata)?
答案 0 :(得分:1)
您的应用是否使用了Documents文件夹的绝对路径?这很糟糕,如recorded here。
您通常希望使用以下内容:
- (NSString *)documentsDirectory
{
if (_documentsDirectory == nil)
{
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
self.documentsDirectory = [paths objectAtIndex:0];
}
return _documentsDirectory;
}
动态获取路径。然后,您可以使用以下内容记录内容并查看其中的内容:
NSArray *documentsDirectory = [fileManager contentsOfDirectoryAtPath:self.dataController.documentsDirectory error:NULL];
NSLog(@"documentsDirectory is: \n%@", [documentsDirectory description]);