如何在iOS上强制使用新的FCM代币



我试图为用户强制创建一个新的令牌,但它不起作用。

  • 旧代币仍然有效
  • 新令牌不起作用

我遗漏了什么吗?我关注了其他Stack问题,大多数都是过时的,新的都不正确。

Firebase SDK 7.11.0

Installations.installations().delete { error in
debugPrint("InstallationsDEL Installations delete: nERROR: (error)")

Installations.installations().authTokenForcingRefresh(true) { result, error in
debugPrint("InstallationsDEL Installations authTokenForcingRefresh: nERROR: (error) nResult: (result)")


Messaging.messaging().deleteToken { error in
print("InstallationsDEL Messaging.messaging().deleteToken: ERROR: (error)")
Messaging.messaging().token { token, error in
debugPrint("InstallationsDEL Messaging.messaging().token: (token) nnerror: (error)")
print("")
}
}

}
}

这是一个有点晚的响应,但可能会对某人有所帮助:

FirMessaging功能

- (void)deleteTokenWithCompletion:(FIRMessagingDeleteFCMTokenCompletion)completion

允许您删除默认的FCM注册令牌。所以使用Swift的

Messaging.messaging().deleteToken(completion: @escaping(Error?) -> Void)

例如

Messaging.messaging().deleteToken { error in
.
.
.
}

您实际上可以强制Firebase刷新令牌。要检索新的,只需调用

let token = try await Messaging.messaging().token()

从设备中删除应用程序,然后从Xcode中重新运行。

然后它会给你一个新的FCM代币。

无需从代码中强制执行。

相关内容

  • 没有找到相关文章

最新更新