更新时间:2023-01-06 19:12:49
请根据需要修改您的代码
Please modify your code as required
var imgData: NSData = NSData(data: UIImageJPEGRepresentation((self.img_Photo?.image)!, 0.8)!)
self.uploadProfileImageToFirebase(data: imgData)
func uploadProfileImageToFirebase(data:NSData){
let storageRef = Storage.storage().reference().child("usersPosts").child("\(uid).jpg")
if data != nil {
storageRef.putData(data as Data, metadata: nil, completion: { (metadata, error) in
if(error != nil){
print(error)
return
}
guard let userID = Auth.auth().currentUser?.uid else {
return
}
// Fetch the download URL
storageRef.downloadURL { url, error in
if let error = error {
// Handle any errors
if(error != nil){
print(error)
return
}
} else {
// Get the download URL for 'images/stars.jpg'
let urlStr:String = (url?.absoluteString) ?? ""
let values = ["downloadURL": urlStr]
self.addImageURLToDatabase(uid: userID, values: values as [String : AnyObject])
}
}
})
}
}
func addImageURLToDatabase(uid:String, values:[String:AnyObject]){
let ref = Database.database().reference(fromURL: "https://exampleapp.firebaseio.com/")
let usersReference = ref.child("usersPosts").child((Auth.auth().currentUser?.uid)!)
usersReference.updateChildValues(values) { (error, ref) in
if(error != nil){
print(error)
return
}
self.parentVC?.dismiss(animated: true, completion: nil)
}
}