Firebase FCM令牌-何时发送到服务器?

博宝

好的,所以我有一个应用程序,该应用程序首先会带您浏览一些欢迎的幻灯片,然后带您进入登录/注册页面,然后转到MainActivity

我刚刚实现FCM了该服务,并且在用户看到这些页面中的任何页面token 之前,服务都会生成一个我该怎么做才能使服务到达运行MainActivity

问题是我试图将令牌刷新到MySQL DB相应的用户帐户后立即将其发送,但是由于用户尚未登录,因此null发送给服务器的消息失败。有什么好的设计方法?我曾考虑过将令牌保存在SharedPreferences用户登录后发送到服务器中,但是稍后在刷新令牌时会带来很多麻烦?

可能的解决方案

我不确定我是否完全理解这两种服务的运行方式,但是说onTokenRefresh我只是将令牌保存到SharedPreferencesMainActivity中SP,然后从中获取值,然后将其发送到服务器。在这种情况下,刷新令牌后,新值将立即SharedPreferences再次输入。但是我仍然需要检查它是否是SP中的新值,然后将其重新上传到服务器。这很混乱!

金丹·索尼(Chintan Soni)

是FCM令牌是自动生成的。但是,尝试以不同的角度看待这一点。

这就是我的处理方式。

让FCM在您的应用启动后立即生成令牌。OnTokenRefresh将被调用,您只需将其保存为以下首选项即可:

@Override
public void onTokenRefresh() {
    // Get updated InstanceID token.
    String refreshedToken = FirebaseInstanceId.getInstance().getToken();
    Log.d(TAG, "Refreshed token: " + refreshedToken);

    sendRegistrationToServer(refreshedToken);
}

private void sendRegistrationToServer(String token) {
    // Add custom implementation, as needed.
    SharedPreferenceUtils.getInstance(this).setValue(getString(R.string.firebase_cloud_messaging_token), token);
    
   // To implement: Only if user is registered, i.e. UserId is available in preference, update token on server.
   int userId = SharedPreferenceUtils.getInstance(this).getIntValue(getString(R.string.user_id), 0);
   if(userId != 0){
       // Implement code to update registration token to server
   }
}

希望您能清楚地知道方法。询问是否需要更多许可。

编辑

使用新的Firebase SDK(21.0.0),您需要重写onNewToken()method而不是 onTokenRefresh()

 @Override
public void onNewToken(@NonNull String s) {
    super.onNewToken(s);
    sendRegistrationToServer(s);
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Android GCM将令牌发送到服务器

来自分类Dev

正确的方法将Facebook令牌从客户端发送到服务器

来自分类Dev

将 FCM 设备令牌发送到 webview 的正确方法

来自分类Dev

我可以将fcm通知发送给Firebase UserId而不是设备令牌吗?

来自分类Dev

从Android将Firebase令牌发送到Google Cloud Endpoints

来自分类Dev

Firebase中的FCM令牌是什么?

来自分类Dev

Angular节点-在打开新的浏览器窗口时将令牌发送到服务器

来自分类Dev

Firebase FCM获取旧iOS APNS令牌的令牌

来自分类Dev

Firebase:如何将设备令牌转换为 FCM 令牌

来自分类Dev

Firebase自动检查时间将数据发送到服务器?还是我必须创建可变的时间?

来自分类Dev

InstanceID,如果我没有成功将令牌发送到服务器怎么办?

来自分类Dev

如何从Android应用程序将Stripe令牌发送到我们的服务器?

来自分类Dev

将GoogleAuthUtil.getToken提供的访问令牌发送到php Web服务器后进行身份验证

来自分类Dev

在令牌验证期间,在 spring security oauth2 中从资源服务器发送到身份验证服务器的确切内容

来自分类Dev

在服务器上管理APNS和FCM令牌

来自分类Dev

FCM(Firebase云消息传递)如何发送到所有电话?

来自分类Dev

FCM(Firebase云消息传递)如何发送到所有电话?

来自分类Dev

为什么不获取 Android Firebase FCM 注册令牌?

来自分类Dev

将FCM通知发送到1000多个令牌节点js

来自分类Dev

是否可以从服务器(Java)验证Firebase令牌(JWT)

来自分类Dev

当我的Auth0令牌从iOS发送到node.js服务器时,为什么总是返回为无效?

来自分类Dev

为什么我们比URL编码之类的其他技术更喜欢授权标头将承载令牌发送到服务器

来自分类Dev

如何将错误的Firebase消息从服务发送到控制器?

来自分类Dev

FCM令牌何时在Web应用程序中过期

来自分类Dev

在为发件人ID检索FCM令牌之前未设置APNS设备令牌-React Native Firebase

来自分类Dev

通过FCM发送推送通知时,何时使用iOS设备令牌?

来自分类Dev

Firebase管理员SDK FCM错误完全是主题,令牌或条件之一

来自分类Dev

如何在没有Firebase SDK的情况下(即通过REST)生成FCM注册令牌?

来自分类Dev

在node.js服务器上验证客户端Firebase令牌

Related 相关文章

  1. 1

    Android GCM将令牌发送到服务器

  2. 2

    正确的方法将Facebook令牌从客户端发送到服务器

  3. 3

    将 FCM 设备令牌发送到 webview 的正确方法

  4. 4

    我可以将fcm通知发送给Firebase UserId而不是设备令牌吗?

  5. 5

    从Android将Firebase令牌发送到Google Cloud Endpoints

  6. 6

    Firebase中的FCM令牌是什么?

  7. 7

    Angular节点-在打开新的浏览器窗口时将令牌发送到服务器

  8. 8

    Firebase FCM获取旧iOS APNS令牌的令牌

  9. 9

    Firebase:如何将设备令牌转换为 FCM 令牌

  10. 10

    Firebase自动检查时间将数据发送到服务器?还是我必须创建可变的时间?

  11. 11

    InstanceID,如果我没有成功将令牌发送到服务器怎么办?

  12. 12

    如何从Android应用程序将Stripe令牌发送到我们的服务器?

  13. 13

    将GoogleAuthUtil.getToken提供的访问令牌发送到php Web服务器后进行身份验证

  14. 14

    在令牌验证期间,在 spring security oauth2 中从资源服务器发送到身份验证服务器的确切内容

  15. 15

    在服务器上管理APNS和FCM令牌

  16. 16

    FCM(Firebase云消息传递)如何发送到所有电话?

  17. 17

    FCM(Firebase云消息传递)如何发送到所有电话?

  18. 18

    为什么不获取 Android Firebase FCM 注册令牌?

  19. 19

    将FCM通知发送到1000多个令牌节点js

  20. 20

    是否可以从服务器(Java)验证Firebase令牌(JWT)

  21. 21

    当我的Auth0令牌从iOS发送到node.js服务器时,为什么总是返回为无效?

  22. 22

    为什么我们比URL编码之类的其他技术更喜欢授权标头将承载令牌发送到服务器

  23. 23

    如何将错误的Firebase消息从服务发送到控制器?

  24. 24

    FCM令牌何时在Web应用程序中过期

  25. 25

    在为发件人ID检索FCM令牌之前未设置APNS设备令牌-React Native Firebase

  26. 26

    通过FCM发送推送通知时,何时使用iOS设备令牌?

  27. 27

    Firebase管理员SDK FCM错误完全是主题,令牌或条件之一

  28. 28

    如何在没有Firebase SDK的情况下(即通过REST)生成FCM注册令牌?

  29. 29

    在node.js服务器上验证客户端Firebase令牌

热门标签

归档