迅速无法更新FCM令牌

时间:2019-12-18 13:27:06

标签: swift firebase google-cloud-platform firebase-cloud-messaging

如果有新令牌可用,我正在尝试更新我的FCM令牌。不幸的是,我收到此错误:

  

发现nil,同时隐式展开一个Optional值

这是我的代码:

50*m*e_el

我认为这是因为我的uid为零,但我之前已经对其进行过检查

1 个答案:

答案 0 :(得分:0)

currentUser是可选的,但uid上的currentUser不是可选的。尝试像这样安全地解开currentUser

func messaging(_ messaging: Messaging, didReceiveRegistrationToken fcmToken: String) {
    print("Firebase registration token: \(fcmToken)")

    let dataDict:[String: String] = ["token": fcmToken]
    NotificationCenter.default.post(name: Notification.Name("FCMToken"), object: nil, userInfo: dataDict)

    if let currentUser = Auth.auth().currentUser {
        db.collection("Users").document(currentUser.uid).setData([ "fcm": fcmToken ], merge: true)
    }
}