【发布时间】:2013-05-20 14:39:16
【问题描述】:
我对应用程序应该将一堆文件发送到哪里感到有些困惑。让我假设一个应用程序一次接受来自用户的多个带有 NSOpenPanel 的图像。该应用程序将图形过滤器应用于它们。现在可以保存已处理的文件了。在他们强迫我们对应用程序进行沙箱处理之前,我们可以在没有 NSSavePanel 的情况下将处理后的文件导出到应用程序支持中的应用程序文件夹。如果你想在别处保存文件,那么你必须使用 NSSavePanel。如果应用程序是沙盒的,它不能将文件发送到 NSApplicationSupportDirectory/{app name}(指向分配给这个应用程序的容器文件夹)?几天前,我的第一个沙盒应用程序被拒绝,仅仅是因为一个文本字段显示了容器的应用程序支持文件夹的路径。所以如果你有一堆文件要导出,你必须提示用户询问每个文件保存在哪里? Apple, Inc. 发布的 AppSandboxDesignedGuide 没有明确说明文件的保存位置,只是说“您的应用对容器及其子目录具有不受限制的读/写访问权限。”我认为这个 PDF 指南是this web site 的印刷版。我在这里问这个问题是因为我有一些疑问,而且至少在我两年前向他们提交申请时,审稿人经常出错。
感谢您的建议。
【问题讨论】:
标签: objective-c macos osx-mountain-lion sandbox