Testflight更新版本将删除数据

时间:2014-09-22 01:48:05

标签: ios core-data testflight

我有一个从服务器下载图像/上下文的应用程序。 将图像保存到/文档,上下文到数据库coredata。

假设我已经下载了所有数据(应用程序显示所有必要的数据(图像/上下文)),出于某种原因,我在testflight中上传了应用程序的新版本,然后在我的设备上更新应用程序当我运行应用程序时,它现在不会显示我在之前版本中下载的图像,但我仍然有上下文。所以我的问题是新构建删除了/ documents中的所有数据吗?如果是这样,我怎么还有我的上下文数据(数据库coredata)?

1 个答案:

答案 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]);