我有一个简单的 Cocoa 图像预览应用程序。用户使用 选择文件NSOpenPanel
,应用程序使用 Quick Look API 生成预览图像。
我想将预览生成移到单独的 XPC 服务中。如果没有应用沙盒,一切正常,但在为父应用和 XPC 服务启用应用沙盒后,XPC 服务被拒绝读取用户选择的文件。
允许父应用读取文件(因为它是通过 NSOpenPanel 选择的)。
如何将用户选择的文件的“文件读取”权限从父应用程序转移到XPC进程,以便XPC进程可以读取文件以生成预览?
我的 XPC 服务通过其权利请求文件读取访问,我将以下密钥添加到 XPC 服务 Info.plist,但这没有帮助:
JoinExistingSession = YES