2017-01-10 72 views
0

我目前创建Firebase设备组,并且它一直运行,直到用户注销(或清除其内存并登录到其他帐户)。在这种情况下,用户从他们的旧组和新组获得消息。看起来会发生什么是旧组保留了设备的标记(即使它清除了,所以它会自动更新?)。例如,如果我登录到一个帐户,然后清除设备上的应用程序并重新登录到另一个帐户,则发送到新组的所有FCM消息也会发送到旧的..我已经甚至尝试从旧组中手动删除单个设备标记以将其删除,但它是无效的。设备组和主题Firebase云消息传递

如何清除或卸载应用程序时删除用户?我可以删除注销,但不知道该怎么办在这些其他情况下...

如果我使用的话题,它会自动删除人,如果他们清除或卸载?

+0

清除应用程序的数据应令牌无效的。下次运行应用程序时,它将生成一个新的令牌。假设新令牌不是旧设备组的一部分,那么发送到旧设备组不应该导致应用程序接收到该消息,因为该令牌已失效。请确认新令牌没有被添加到旧设备组中。 –

回答

0

您需要删除INSTANCEID当你注销并获得新令牌

new Thread(new Runnable() { 
     @Override 
     public void run() { 
      try { 
       FirebaseInstanceId.getInstance().deleteInstanceId(); 
       FirebaseInstanceId.getInstance().getToken(); 
      } catch (IOException e) { 
       e.printStackTrace(); 
      } 
     } 
    }).start(); 
相关问题