回到GCM时代,建议您每次向应用程序发布更新时,都应该检查是否有新的注册ID(因为在更新后不能保证相同)应用程序启动时.
FCM的情况仍然如此吗?我找不到任何关于此的文档
最佳答案您应该在应用程序运行时检查当前令牌并监视onTokenRefresh()以检测令牌何时更改.通过调用FirebaseInstanceID.getToken()检查app / main活动启动时的当前令牌:
public class MainActivity extends AppCompatActivity { @OverrIDe protected voID onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentVIEw(R.layout.activity_main); ... String token = FirebaseInstanceID.getInstance().getToken(); if (token != null) { sendRegistrationToServer(refreshedToken); } } ...
您在此代码段中调用的sendRegistrationToServer()方法是您将注册令牌发送到您自己的服务器(或Firebase数据库之类的无服务器解决方案)的方法.
通过继承FirebaseInstanceIDService并覆盖onTokenRefresh()来监视令牌的更改:
@OverrIDepublic voID onTokenRefresh() { String refreshedToken = FirebaseInstanceID.getInstance().getToken(); // If you want to send messages to this application instance or // manage this apps subscriptions on the server sIDe,send the // Instance ID token to your app server. sendRegistrationToServer(refreshedToken);}
请参阅此处的文档:https://firebase.google.com/docs/cloud-messaging/android/client#sample-register 总结
以上是内存溢出为你收集整理的android – 在应用更新时更新Firebase实例ID全部内容,希望文章能够帮你解决android – 在应用更新时更新Firebase实例ID所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)