我正在努力使用以下代码在 macOS 上的用户下载目录中简单地创建一个文件夹:
static func createFolderInDownloadsDirectory() {
let downloadsDirectory = FileManager.default.urls(for: .downloadsDirectory, in: .userDomainMask).first!
let downloadsDirectoryWithFolder = downloadsDirectory.appendingPathComponent("FolderToCreate")
do {
try FileManager.default.createDirectory(at: downloadsDirectoryWithFolder, withIntermediateDirectories: true, attributes: nil)
} catch let error as NSError {
print(error.localizedDescription)
}
}
这是输出:
You don’t have permission to save the file “FolderToCreate” in the folder “Downloads”.
我该如何解决这个问题?
最佳答案
Xcode 9 及更高版本默认启用沙盒,这严重限制了与系统的交互。但是,您仍然可以通过向您的应用程序添加授权来写入下载文件夹:
选择您的目标,然后选择功能并将下载文件夹设置为读/写:
如果您不打算通过 Mac App Store 分发您的应用程序,您可以关闭沙盒。您的应用程序仍然可以签名,但用户在首次启动您的应用程序时会收到警告。
关于swift - 如何在 macOS 上使用 swift 在下载文件夹中创建目录?权限异常。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50200377/