为沙盒Cocoa应用程序创建临时文件

时间:2012-09-11 10:16:55

标签: objective-c cocoa app-store sandbox temporary-files

我的应用是沙盒(根据最新的App Store指南),我想创建一些临时文件。

我可以这样做吗?如果“是”,我可以在哪里做到这一点?有没有预定的路径? (以及访问该路径的命令?)

2 个答案:

答案 0 :(得分:13)

您应该使用NSTemporaryDirectory()函数,该函数将为您的应用程序查找并返回相应的临时文件夹(无论沙箱状态,操作系统版本和许多其他内容)。有关NSTemporaryDirectory()和其他临时目录相关详细信息的更多详细信息,请查看this Cocoa With Love帖子。

答案 1 :(得分:5)

关于NSHipster的临时目录有一篇很好的文章:

http://nshipster.com/nstemporarydirectory/

作者建议此代码与沙盒应用程序完美配合:

NSError *error;
NSString *globallyUniqueString = [[NSProcessInfo processInfo] globallyUniqueString];
NSString *tempDirectoryPath = [NSTemporaryDirectory() stringByAppendingPathComponent:globallyUniqueString];
NSURL *tempDirectoryURL = [NSURL fileURLWithPath:tempDirectoryPath isDirectory:YES];
[[NSFileManager defaultManager] createDirectoryAtURL:tempDirectoryURL withIntermediateDirectories:YES attributes:nil error:&error];