1
FacebookとTwitterのログインボタンがあります。私はuser guideに従っています。ユーザー情報を保存したいのですが、このエラーが表示されます。Could not cast value of type 'FIRUserInfoImpl' to 'NSDictionary'
Firebase swift - タイプ 'FIRUserInfoImpl'の値を 'NSDictionary'にキャストできません
なぜ私は関連するデータを保存できないのか分かりません。これはプロバイダのデータがオブジェクトの種類と一致しなかったためですか?
func createFirebaseUser(){
//MARK: Assign what to get from current User data.
let key = ref.child("users").childByAutoId().key
if let user = FIRAuth.auth()?.currentUser{
for profile in user.providerData {
let userID = profile.uid as! String!
let username = profile.displayName as! String!
let email = profile.email as! String!
let profilePicUrl = profile.photoURL as! NSURL!
ref.child("users").updateChildValues(profile as? NSDictionary as! [NSObject : AnyObject])
}
}
'profile'はタイプ' FIRUserInfo'であり、辞書にキャストすることはできません。それがエラーメッセージに表示されます。おそらく、抽出されたプロパティから辞書を作成する必要があります。また、 'String!'と 'NSURL! 'にある感嘆符をすべて削除してください。あなたは確かに非オプションであることが必要です。 – vadian
データモデルを作成することを意味しますか? –
'updateChildValues'のパラメータの型に一致するものを作成してください – vadian