如何判断用户已授予哪些路径访问权限?我知道,使用NSOpenPanel,沙箱会自动扩展,以允许访问用户选择的目录。这些信息是否存储在任何地方,以便我知道是否需要抛出NSOpenPanel?
或者我是否需要在NSUserDefaults中本地跟踪它?
答案 0 :(得分:2)
您有责任使用安全书签存储已授予的路径,阅读NSURL文档。
如果您需要访问路径,请检查您是否拥有安全书签(例如存储在NSUserDefaults内),如果您已重复使用,否则显示打开的面板
答案 1 :(得分:1)
如果您需要知道应用的当前执行是否可以访问特定路径,您可以调用access
- 请参阅unix手册页第2节。您可以测试读取,写入和执行访问权限,以及结果反映了当前的沙箱。
如果您希望保留应用程序执行之间的访问权限,则需要创建安全范围书签并将其存储在用户默认值或其他文件中。