我正在使用 NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)
在我的应用程序中获取应用程序文档目录,但返回的数组只包含一个对象,而且它是一个不可写的、不正确的目录:
/Users/me/Library/Application Support/iPhone Simulator/Documents
我找到了 this question这表明问题与供应有关,但答案仅此而已。所以我想我问的是一个重复的问题,但该问题的答案是不够的,所以我希望在这个问题中得到一个实际的答案。
最佳答案
嗯...所以返回的目录可能与您对应用程序的期望不同的一个原因可能与 Xcode 目标类型有关。这不会碰巧是一个测试目标吧?在这种情况下,正确答案很可能是其中没有应用程序 GUID 的答案,因为实际上它不是应用程序。这google group discussion暗示如果是这种情况,您只需创建目录即可。
为了好玩,我从终端窗口创建了目录/Users/me/Library/Application Support/iPhone Simulator/Documents,现在它似乎可以运行了。仍然存在测试错误,但这些错误可能是真实的。
如果缺少文档目录,我建议您更改测试应用程序以创建文档目录 - 类似于:
if(![[NSFileManager defaultManager] createDirectoryAtPath:NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) withIntermediateDirectories:YES attributes:nil error:NULL])
NSLog(@"Error: Create folder failed %@", NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES));
关于objective-c - NSSearchPathForDirectoriesInDomains 返回错误的目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6515979/