Исправить предупреждение с работой в FireBase


#1

Всем привет, использую такой механизм для записи url’a загрузки:
if let profileImageUrl = metadata?.downloadURL()?.absoluteString {
let values = [name: name, “email”: email, “profileImage”: profileImageUrl]
self.registerUserIntoDatabaseWithUID(uid: uid, values: values as [String : AnyObject])
}
Но это устаревший метод, как его перепилить на новый лад? Уже все перепробовал, вот что пишет в предупреждении:
‘downloadURL()’ is deprecated: Use StorageReference.downloadURLWithCompletion() to obtain a current download URL.

Заранее спасибо


#2

let imageName = NSUUID().uuidString
let storageRef = Storage.storage().reference().child(“profile_images”).child("(imageName).png")

        if let profileImageUrl = self.profileImageView.image, let  uploadData = UIImageJPEGRepresentation(self.profileImageView.image!, 0.1) {
            storageRef.putData(uploadData, metadata: nil, completion: { (metadata, error) in
                
                if error != nil, metadata != nil {
                    print(error ?? "")
                    return
                    
                }
                
                storageRef.downloadURL(completion: { (url, error) in
                    if error != nil {
                        print(error!.localizedDescription)
                        return
                    }
                    if let profileImageUrl = url?.absoluteString {
                        let values = ["name": name, "email": email, "profileImageUrl": profileImageUrl]
                        self.registeUserIntoDatabaseWithUID(uid: uid, values: values as [String : AnyObject])
                    }
                })
            })
        }
    }
}