使用沙盒应用程序中的NSFileManager访问NSApplicationScriptsDirectory

时间:2013-03-23 12:26:20

标签: objective-c cocoa appstore-sandbox

使用此代码访问应用程序脚本的默认文件夹时遇到了一些问题(我认为这是正确的方法):

NSError* error;
NSURL* scriptsFolderURL = [[NSFileManager defaultManager] URLForDirectory: NSApplicationScriptsDirectory inDomain: NSUserDomainMask appropriateForURL: nil create: YES error: &error];

NSLog(@"%@", scriptsFolderURL);
NSLog(@"%@", [error description]);

问题是两个NSLog调用都打印(null),这意味着我没有得到任何东西。我做错了什么?

2 个答案:

答案 0 :(得分:2)

NSApplicationScriptsDirectory 的评论如下:

  

//调用应用程序的用户脚本文件夹的位置   (〜/ Library / Application Scripts / code-signing-id)

code-signing-id给出了您必须启用代码签名的提示。只要您启用代码签名,您就会收到正确的网址。

答案 1 :(得分:0)

只要您的有效Info.plist包含有效的应用程序包ID且在OS X 10.8下运行,这应该可以正常工作。

但是,我可以确认,API返回nil并且出现nil错误并不罕见,这有点超出了API合同。