用于在沙盒后保存文件的NSSavePanel

时间:2013-12-04 00:19:15

标签: osx-mavericks appstore-sandbox nssavepanel

我有一个mac AVRecording应用程序,它记录视频并将其保存到通过NSSavePanel选择的位置。它工作正常,直到我沙盒化应用程序。

对于沙盒,我添加了以下权利     com.apple.security.files.user-selected.read写     com.apple.security.assets.movi​​es.read写     com.apple.security.files.downloads.read写 这样只能保存到下载和电影文件夹。

如何将文件保存到任何所需位置,桌面,文档等?

1 个答案:

答案 0 :(得分:0)

从您的问题中不清楚您是指保存特定文件(在这种情况下,您可以使用NSSavePanel并使用NSFileManager手动复制文件以将文件写入用户 - 指定的新文件),或者您是指让用户为将来的所有下载选择一个位置。

如果要提示用户提供用于将来下载的位置,则需要使用安全书签权利和安全书签来保留对该文件夹的访问权限。

还有另一个stackoverflow answer about sandboxing,它涵盖了保存和使用安全书签的过程。