【发布时间】:2018-02-18 12:12:38
【问题描述】:
我想知道是否有一种方法可以测试您是否订阅了 android 方面的主题。
基本上,我希望所有设备都将在安装期间订阅一个主题,当设备首次获得令牌时。但是,设备总是有可能无法订阅。 FCM注册令牌应该在设备上安装了很长时间,因此在没有清除数据、卸载/重新安装等情况下,不应再次调用onTokenRefresh()方法。
我的想法是测试设备是否订阅了我的 MainActivity 中的主题,如果没有,则再次尝试订阅。如果订阅失败,则获取新的令牌并重试,等等。
@Override
public void onTokenRefresh() {
// Get updated InstanceID token.
String refreshedToken = FirebaseInstanceId.getInstance().getToken();
Log.e(TAG, "Refreshed token: " + refreshedToken);
// Subscribe to a topic
Log.e(TAG, "Subscribing to topic");
FirebaseMessaging.getInstance().subscribeToTopic("test");
所以,我可以订阅和取消订阅,但是如何检查设备是否订阅了某个主题?不幸的是,我做了相当多的谷歌搜索,但找不到任何东西。
非常感谢任何/所有帮助。谢谢!
【问题讨论】:
标签: java android firebase firebase-authentication firebase-cloud-messaging