我的问题是,当我试图将照片库中的图像复制到文件系统中时,会出现错误,错误是
(Error Domain=NSCCOAErrorDomain Code=257“无法打开文件IMG_0926.jpg,因为您没有查看该文件的权限。”UserInfo=NSFilePath=/var/mobile/media/dcim/100Apple/IMG_0926.jpg,NSUnderlyingError=0x15649630 Error Domain=NSPOSIXErrorDomain Code=1“不允许操作})
我的代码是:
let fileManager = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask)
let document = fileManager[0]
var i = 0
for asset in arrayOfAssets {
let filePath = document.appendingPathComponent("image\(arrayOfAssets.count + i).png")
i += 1
PHImageManager.default().requestImageData(for: asset, options: nil) { (data, nil, _ , info) in
let url = info?["PHImageFileURLKey"] as! NSURL
do {
try FileManager.default.copyItem(at: url as URL, to: filePath)
}catch {
print(error)
}
// print(filePath)
}
}
如果有人能帮我的话,请帮忙
谢谢大家
听起来您正在尝试打开位于以下位置的文件:
默认情况下,不允许访问此目录,出于安全考虑,您只能访问文档目录中的文件。
我在您的代码中找不到此URL的来源,但根据NSError,您试图访问文件系统允许区域之外的图像。
请勾选iOS 11中照片库plist中的权限选项。
此外,您还可以将数据保存在临时目录中,并在需要时和使用后提取它
清除临时目录中的数据。