iOS中的路径和目录

时间:2012-07-07 17:19:17

标签: objective-c ios

所以我有以下方法来获取路径:

- (NSString *)filePath {
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *filePath = [[paths objectAtIndex:0] stringByAppendingPathComponent:[NSString stringWithFormat:@"%@_json", self.identifier]];
    return filePath;
}

此路径将用于密钥链访问kSecAttrAccount和kSecAttrGeneric。所以我期待它有相同的道路。但事实证明,升级我的应用程序后,此路径会发生变化。

之前:

/var/mobile/Applications/CEE344F7-4FE1-4455-BD6D-A4D6EAA4F5FE/Documents

在病房之后是:

/var/mobile/Applications/A6429F46-972C-4BC1-A71B-2786312663E8/Documents/

是什么导致这种情况发生?

1 个答案:

答案 0 :(得分:2)

这意味着iOS会在新文件夹中安装应用程序的更新版本。完成后,它会将用户数据移动到新文件夹并删除旧文件夹。这可能已经完成,因此安装过程中的错误不会破坏现有应用程序。