将设备令牌或注册令牌发送到服务器?

时间:2019-04-09 03:40:19

标签: ios firebase apple-push-notifications

我正在我的应用程序中实现Firebase来进行推送通知。以前,该应用已将设备令牌发送到自己的服务器,以便他们配置向其发送推送通知的设备。

1)现在,在Firebase中,有一个称为注册令牌的东西。因此,要保持服务器处理向哪个设备发送推送通知的相同功能,我应该从didRegisterForRemoteNotification发送设备令牌,还是从didReceiveRegistrationToken委托发送firebase注册令牌?

1 个答案:

答案 0 :(得分:0)

在我的应用中,我正在使用它。     从那里发送,

import UserNotifications
import Firebase
import FirebaseInstanceID
import FirebaseMessaging

func application(_ application: UIApplication,
                     didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) {

        InstanceID.instanceID().instanceID { (result, error) in
            if let error = error {
                print("Error fetching remote instange ID: \(error)")
            } else if let result = result {
                print("Remote instance ID token: \(result.token)")
          // save in userdefault and fetch when you user register and login,
                Constants.kUserDefaults.set(result.token, forKey: appConstants.fcmToken)
            }
        }
        Messaging.messaging().apnsToken = deviceToken as Data 
}
// and i also use
func messaging(_ messaging: Messaging, didReceiveRegistrationToken fcmToken: String) {
        print("Firebase registration token: \(fcmToken)")
        let token = Messaging.messaging().fcmToken
        print("FCM token: \(token ?? "")")
        Constants.kUserDefaults.set(token, forKey: appConstants.fcmToken)

}

希望它对您有用。