相关疑难解决方法(0)

Android:订阅Firebase云消息传递(FCM)主题

根据Firebase云消息传递文档,用于订阅用户我需要调用的主题

FirebaseMessaging.getInstance().subscribeToTopic("news");
Run Code Online (Sandbox Code Playgroud)
  1. 在我的应用程序中,我需要所有用户订阅我的云消息传递主题.既然返回值是void,问题是我如何理解订阅是否成功?
  2. subscribeToTopic每次我的应用程序启动时调用是不好的做法 ?

android firebase firebase-cloud-messaging

21
推荐指数
1
解决办法
2万
查看次数

Android/Firebase - 检查您是否订阅了主题

我想知道是否有一种方法来测试你是否订阅了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");
Run Code Online (Sandbox Code Playgroud)

所以,我可以订阅和取消订阅,但如何检查设备是否订阅了某个主题?不幸的是,我公平地分享了谷歌搜索,也找不到任何东西.

我非常感谢任何/所有的帮助.谢谢!

java android firebase firebase-authentication firebase-cloud-messaging

9
推荐指数
1
解决办法
5055
查看次数