#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)
}
надеюсь, это сработает для вас.