Метод downloadURL
возвращает URL-адрес данных изображения, а не фактические данные изображения. Для прямой загрузки данных изображения вы можете использовать getData
. Вот пример из документов :
// Create a reference to the file you want to download
let islandRef = storageRef.child("images/island.jpg")
// Download in memory with a maximum allowed size of 1MB (1 * 1024 * 1024 bytes)
islandRef.getData(maxSize: 1 * 1024 * 1024) { data, error in
if let error = error {
// Uh-oh, an error occurred!
} else {
// Data for "images/island.jpg" is returned
let image = UIImage(data: data!)
}
}
Это должно делать то, что вы хотите:
storage = Storage.storage().reference(forURL: "gs://senlink-6d966.appspot.com")
profilePath = storage.child("users_profile/\(Auth.auth().currentUser!.uid).png")
profilePath?.getData(maxSize: 1 * 1024 * 1024) { data, error in
if let error = error {
// Uh-oh, an error occurred!
} else {
// Data for your image
let image = UIImage(data: data!)
DispatchQueue.main.async {
self.profileImg.image = image
}
}
}