Я пытаюсь сохранить удаленную фотографию (хранящуюся в Firebase Storage) на рулон камеры, но следующий код не работает должным образом в Swift:
PHPhotoLibrary.shared().performChanges({
if let photoUrl = URL(string: "<see below for the url of the image>") {
PHAssetChangeRequest.creationRequestForAssetFromImage(atFileURL: photoUrl)
}
}, completionHandler: { (success, error) -> Void in
if let err = error {
print(err)
}
})
URL-адрес изображения:
https://firebasestorage.googleapis.com/v0/b/nearbie-ee55a.appspot.com/o/wallpaper_pictures%2F52YgRFw4jWhYL5ulK11slBv7e583_E6A1D795-ED73-4C1E-98E1-CC97FF87E4C1?alt=media&token=0b090de3-43ab-426a-b63b-9d61372732d0
Оператор печати печатает:
Error Domain=NSCocoaErrorDomain Code=-1 "(null)"
Почему это происходит и как мне его разрешить?
Редактировать - это правильный ответ
Сначала загрузите изображение, а затем сохраните его в фотопленке
URLSession.shared.dataTask(
with: photoUrl,
completionHandler: { (data, response, error) -> Void in
if let imageData = data {
PHPhotoLibrary.shared().performChanges({
PHAssetChangeRequest.creationRequestForAsset(from: UIImage(data: imageData)!)
}, completionHandler: { (success, error) -> Void in
if let err = error {
print(err)
}
})
}
}
).resume()