2016-06-07 27 views

risposta

13

di caricarle al primo Firebase bagagli e quindi memorizzare l'URL nel database Firebase

let storage = FIRStorage.storage() 
let data: NSData = myImageData 
let userProfilePic = storageRef.child("users/abc/profileimage.jpg") 

let uploadTask = userProfilePic.putData(data, metadata: nil) { metadata, error in 
    if (error != nil) { 
    // Uh-oh, an error occurred! 
    } else { 
    let downloadURL = metadata!.downloadURL 
    // store downloadURL in db 
    storeUserProfileInDB(downloadURL) 
    } 
} 

func storeUserProfileInDB(profileImgUrl: NSURL) { 
    let ref = FIRDatabase.database().reference() 
    let key = ref.child("users").childByAutoId().key 

    let dictionaryUser = [ "userName" : name! , 
          "imageUrl" : profileImgUrl.absoluteString, 
          ] 

    let childUpdates = ["https://stackoverflow.com/users/\(key)": dictionaryTodo] 
    ref.updateChildValues(childUpdates, withCompletionBlock: { (error, ref) -> Void in 
     //save 
    }) 

} 
+0

dispiace che sia voluto così tanto tempo per rispondere, ma che campione aiutato molto! grazie – JustinM

+0

e nota questo suggerimento importante su un altro QA .. https://stackoverflow.com/a/45395260/294884 – Fattie

Problemi correlati