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

Dr.*_*eon 8 cocoa sandbox objective-c temporary-files app-store

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

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

Tim*_*Tim 14

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


Flo*_*dis 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];
Run Code Online (Sandbox Code Playgroud)