Objective C文档目录在设备上不断变化

时间:2014-11-07 18:17:26

标签: ios xcode directory documents

我从一开始就开始为iOS开发,但我遇到了一些麻烦。我开始创建一个需要创建文件并将它们保存到文档文件夹和应用程序支持的应用程序,但是使用

的标准方法很好
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentsDirectory, NSUserDomainMask, YES);
NSString *filePath = paths[0];

不起作用。每次启动应用程序时,它都会不断显示不同的文件路径。

我在google上搜索了这个,到目前为止,每个人似乎只是说他们在模拟器上有这个问题。但是,这不是限制在模拟器上的问题,无论是否从Xcode运行,它都会在每次启动应用程序时在设备上发生。 其他搜索结果只是告诉我这种做法和/或来自太多年前的旧方式。

有谁知道当前写入Documents and Application Support文件夹的方式是? 这是使用在iOS7.1和iOS8.1上运行的iOS SDK8.1从Xcode 6.1编译的问题

任何帮助将不胜感激

1 个答案:

答案 0 :(得分:18)

如果要将路径存储在持久存储中,并希望在将来的某个日期使用该路径,则应仅存储相对于应用程序的Documents文件夹的路径,然后在需要访问该资源时,获取文档运行时的文件夹路径,并附加资源的相对路径。

另外,当我通过Xcode运行我的应用程序时,我只看到这个改变沙盒路径的行为。如果我直接从我的设备运行应用程序,路径将保持不变。无论如何,我总是倾向于使用相对路径而不是固定路径。我永远不会认为沙箱路径无法更改(例如,如果应用程序备份并稍后恢复,我不会认为路径未更改)。