У меня проблема с загрузкой изображений в хранилище Firebase.У меня есть одна функция:
func uploadImageToFirebase(_ imageToUpload: UIImage? , completion: @escaping((_ url: String?)->())){
let imageName = UUID().uuidString
let storageRef = Storage.storage().reference()
let imagesRef = storageRef.child(imageName)
guard let uploadImage = imageToUpload else { return }
guard let uploadData = uploadImage.jpegData(compressionQuality: 0.8) else { return }
let metaData = StorageMetadata()
metaData.contentType = "image/jpeg"
imagesRef.putData(uploadData, metadata: metaData) { (metadata, err) in
if err == nil && metadata != nil {
imagesRef.downloadURL(completion: { (url, err) in
guard let downloadUrl = url else { return } // TODO: Tell users there is a problem instead of just return
let urlString = downloadUrl.absoluteString
completion(urlString)
})
}else {
print(err?.localizedDescription)
}
completion(nil)
}
}
Если я уже создал пользователя в своем приложении и пытаюсь создать и загрузить новый пост, выбранное мной изображение загружается в FirebaseХранение, и я получаю его URL обратно, чтобы я мог отобразить его.При попытке создать нового пользователя и выбрать для него изображение профиля, изображение не загружается.Я вызываю точно такой же метод.Я получаю эту ошибку:
err Error? domain: "FIRStorageErrorDomain" - code: 18446744073709538595 0x00006000026dced0
, что не происходит при загрузке "фотографии-поста".
Я подумал, может быть, один из них: metaData, uploadData или imageToUpload равны нулю, нопохоже, это не проблема (ни один из них не равен нулю).