如何在macOS中访问受限文件(/ User / user / Library / Messages / xxx)?

时间:2019-01-15 14:54:14

标签: swift macos permissions

我试图弄清楚如何访问我的macOS应用程序(swift)中的~/Library/Messages文件夹。具体来说,我正在尝试访问chat.db文件。

如果执行以下操作(不使用沙箱),则会收到打开错误。

let url = try? FileManager.default.url(for: .libraryDirectory, in: .userDomainMask, appropriateFor: nil, create: false)
url = url!.appendingPathComponent("Messages", isDirectory: true).appendingPathComponent("chat.db", isDirectory: false)

// Then open this file...

如果我改用“打开对话框”将用户指向文件夹,则会在文件夹图标上显示禁止标志。

访问此文件需要什么权限?我已经尝试过可访问性,但事实并非如此(而且我没有授予iTerm可访问性,我仍然可以转到该文件夹​​)。任何指针表示赞赏。谢谢!

(我只需要访问这一个文件。如果有一种方法可以在沙箱中进行操作,那么我很乐意走这条路。如果不可能的话,请问任何允许的权限。)

1 个答案:

答案 0 :(得分:1)

您需要为需要访问该路径的应用程序允许“全盘访问”:

enter image description here

这是macOS Mojave隐私更改的一部分。