【问题标题】:Mac OS X: Open file in finder + App SandboxMac OS X:在 finder + App Sandbox 中打开文件
【发布时间】:2011-10-19 03:39:41
【问题描述】:

我尝试打开一个可以正常工作的查找器窗口,但每次我这样做时都会有 1 秒的延迟并记录一个错误。

[[NSWorkspace sharedWorkspace] selectFile:@"Users/[TheUser]/Downloads" inFileViewerRootedAtPath:pathStr];

日志显示:

__CFPasteboardIssueSandboxExtensionForPath: 错误 [/Users/TheUser/Downloads/]

这正常吗?我已启用权利并允许下载文件夹访问。

【问题讨论】:

  • 我也有同样的问题。你能解决吗??
  • 我也看到了这个,想知道答案。

标签: macos sandbox entitlements appstore-sandbox


【解决方案1】:

有点晚了,但我也偶然发现了这个问题并找到了答案。对于此警告/错误/无论它是什么消失,您需要有一个指向路径的安全范围 URL(这对您来说可能很棘手,因为要获得这样的 URL,您 必须 em> 使用 NSOpenPanel 并惹恼使用,即使您拥有该文件夹的正确权利!)。

一旦您拥有该安全范围的 URL,您必须调用 startAccessingSecurityScopedResource 方法,然后再调用 NSWorkSpace。之后不要忘记调用stopAccessingSecurityScopedResource(可以在selectFile:inFileViewerRootedAtPath:返回后立即调用)以释放内核资源,避免无法对startAccessingSecurityScopedResource进行更多调用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-09-30
    • 2010-12-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多