OGeek|极客世界-中国程序员成长平台

标题: ios - 在 iOS 的某些设备中无法获得 FCM 通知 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-11 18:32
标题: ios - 在 iOS 的某些设备中无法获得 FCM 通知

在我的应用中,我使用 swift3 使用 FCM 推送通知。当应用程序安装在设备中时,一些设备会收到通知,而一些设备在推送时不会收到通知。当我们在不删除应用程序的情况下更新新版本时,将无法收到通知,但如果删除应用程序并重新安装,我们会收到通知。我的问题是

  1. 为什么有些设备收不到通知。所有设备 FCM token 都成功存储到服务器中。我们重新检查这一点。
  2. 如何从后端得知 FCM token 何时过期?
  3. 我们能否在每次应用启动时强制获取 FCM token ?
  4. 为什么有些设备存在“invalid-registration-token”和“token-not-registered”问题?

谢谢。非常感谢您的帮助!



Best Answer-推荐答案


您可以在您的 App 委托(delegate)中使用 FIRMessagingDelegate 协议(protocol)检查 token 是否已更新。使用didRefreshRegistrationToken方法获取更新的token

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

如果 token 已更新,请将当前 token 替换为更新后的 token 。

关于ios - 在 iOS 的某些设备中无法获得 FCM 通知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45814678/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (https://ogeek.cn/) Powered by Discuz! X3.4