我的问题是,当我尝试将图片从照片库复制到文件系统时,我收到错误错误
(错误域名= NSCocoaErrorDomain代码= 257“文件”IMG_0926.JPG“ 因为你没有权限查看它而无法打开。“ 的UserInfo = {NSFilePath =的/ var /移动/媒体/ DCIM / 100APPLE / IMG_0926.JPG, NSUnderlyingError = 0x15649630 {错误域= NSPOSIXErrorDomain代码= 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)
}
}
如果有人可以帮助我,请
感谢所有
答案 0 :(得分:0)
听起来您正试图打开位于此处的文件:NSFilePath=/var/mobile/Media/DCIM/100APPLE/IMG_0926.JPG
默认情况下,不允许访问此目录,出于安全原因,您只能访问位于文档目录中的文件。
我在代码中找不到此URL的位置,但根据NSError,您尝试访问文件系统允许区域之外的图像。
答案 1 :(得分:0)
请检查iOS 11中照片库的plist中的权限选项。
此外,您可以将数据保存在TEMP目录中,并在需要时和使用后获取
清理TEMP目录中的数据。