OnNewToken调用两次?

时间:2018-08-10 18:57:20

标签: android firebase push-notification

根据onNewToken的文档,

  

在为默认Firebase项目生成新令牌时调用。在首次安装令牌时以及在令牌更改时再次在应用程序安装后调用。

Q1。这是否意味着它会被调用2次?

Q2。我想将更新的令牌发送到服务器。如果Q1的答案为是,那么由于令牌更改而如何接收onNewToken以便我可以将更新的令牌发送到服务器?

2 个答案:

答案 0 :(得分:2)

在以下情况下令牌可能会更改:

  • 该应用程序删除实例ID。
  • 该应用已在新设备上还原
  • 用户卸载/重新安装应用程序
  • 用户清除应用数据。

您可以创建自己的类,该类从“ FirebaseMessagingService”扩展为将更新的令牌发送到服务器:

case `git rev-parse --symbolic-full-name $anything` in
refs/remotes/*)  echo yes ;;
esac

,您应该在清单中注册它:

bash

答案 1 :(得分:0)

您不会事先知道它将被准确地调用两次。例如,用户可能永远不会在新设备上还原该应用程序,因此它只能被调用一次。否则用户可能会多次执行此操作,那么它将被调用两次以上。

对于确定操作,通常逻辑不需要考虑令牌是新生成还是更新的,因为在两种情况下,令牌都是服务器现在应该使用的令牌,因此您可以将其发送给服务器。服务器无条件。