3
var img: UIImage!
if self.profileImg.image == #imageLiteral(resourceName: "add_image"){
img = #imageLiteral(resourceName: "add_image")
}else{
img = self.profileImg.image
}
if let imgData = UIImageJPEGRepresentation(img, 0.2){
print(imgData)
let imageUid = NSUUID().uuidString
print(imageUid)
let metaData = StorageMetadata()
print(metaData)
metaData.contentType = "image/jpeg"
DataService.ds.REF_PROFILE_IMAGES.child(imageUid).putData(imgData, metadata: metaData, completion: { (metadata, error) in
if error != nil {
print ("ADAM: UNABLE TO UPLOAD IMAGE TO FIREBASE STORAGE")
}else{
print ("ADAM: SUCCESSFULLY UPLOADED PROFILE IMAGE ")
self.downloadURL = metaData.downloadURL()?.absoluteString
}
})
}else{
print("ADAM: SUMTING WONG")
}
Auth.auth().createUser(withEmail: emailField.text!, password: passwordField.text!) { (user, error) in
if error == nil {
print("ADAM: You have successfully signed up")
// saving the image to storage and link to database
let firstName = self.firstNameField.text
let lastName = self.LastNameField.text
let userName = self.usernameField.text
let profileImageUrl = self.downloadURL
print(profileImageUrl)
let userData = ["provider" : user!.providerID, "FirstName": firstName, "LastName": lastName, "username": userName, "profileImageURL": profileImageUrl]
self.completeSignIn(id: user!.uid, userData: userData as! Dictionary<String, String>)
프로필 이미지 URL은 반복적으로 nil을 반환하므로 로그인 기능을 실행할 수 없습니다. 디버깅 할 때 Dataservice 메소드가 건너 뛰고 이유를 모르겠다는 것을 알 수 있습니다 :/이미지를 firebase 스토리지에 업로드하려고하지만 실행되고 있지 않습니까?
당신은 전무을보고있다, 당신이 확인할 수 있습니다 https://stackoverflow.com/question/46356012/firebase-one-of-two-observers-not-working/46356267 # 46356267 – 3stud1ant3
@ 3stud1ant3 putData 완료 핸들러에서 사용자를 만들려고했지만 아직 행운이 없습니다. – KONADO