我写了一个简短的快速代码,向查找程序添加一个按钮,通过系统touch
调用在当前目录中创建一个新的空白文件。扩展程序使当前目录正常(通过FIFinderSyncController.defaultController().targetedURL()
),但touch
命令由于沙盒而失败。如何申请写访问权限?我的代码未触发用户选择的文件选项。
答案 0 :(得分:1)
您应该能够使用here所述的临时例外权利。更具体地说,两种权利中的一种就足够了:
com.apple.security.temporary-exception.files.home-relative-path.read-write
com.apple.security.temporary-exception.files.absolute-path.read-write
如文档中所述,如果您计划将应用程序提交到App Store,则应提交需要临时例外权利的原因。 (我从来没有经历过这个过程,所以我不确定这个过程是怎么回事。)
答案 1 :(得分:0)
据我所知,这在Finder同步扩展中是不可能的。但是,作为解决方法,您可以将此功能传输到主应用程序 - 首先要求用户将驱动器(将启用功能)拖动到应用程序主窗口,保存安全书签,然后将命令从Finder扩展程序发送到主应用程序。
答案 2 :(得分:0)
据我所知,这是不可能的,此外,这不是Finder同步扩展的目的。 Apple称here表示:
确保Finder Sync扩展点适合您计划提供的功能。最好的Finder Sync扩展支持将本地文件夹的内容与远程数据源同步的应用程序。 Finder Sync不是用于修改Finder用户界面的通用工具。
如果您想修改Finder以达到您的目的,您必须:
我建议后者。 Apple每次发布时都会越来越难以修改系统(无论好坏)。如果您需要此功能,请提交请求它的错误报告。