Отправить токен устройства или регистрационный токен на сервер?

#ios #firebase #apple-push-notifications

#iOS #firebase #apple — push-уведомления

Вопрос:

Я внедряю Firebase в свое приложение для push-уведомлений. Ранее приложение отправляло токен устройства на собственный сервер, чтобы они могли настроить, на какое устройство отправлять push-уведомление.

1) Теперь в Firebase есть нечто, называемое регистрационным токеном. Итак, чтобы поддерживать ту же функцию обработки сервером, на какое устройство отправлять push-уведомление, должен ли я отправлять токен устройства из didRegisterForRemoteNotification или регистрационный токен firebase из делегата didReceiveRegistrationToken?

Ответ №1:

В моем приложении я использую это. отправьте его оттуда,

 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)

}
  

надеюсь, это сработает для вас.