1

我一直在阅读GCM中的规范ID,以及它们如何帮助纠正发送重复推送通知和安全性。但是现在使用Firebase云消息传递(FCM),这个问题是否仍然存在?Firebase云消息传递 - GCM规范ID是否仍然有必要?

我登记部已经从开发商现在带走,我们只是等待一个令牌刷新按如下:

public class MyFirebaseInstanceIDService extends FirebaseInstanceIdService { 

    @Override 
    public void onTokenRefresh() { 
     // Get updated registration ID 
     String refreshedToken = FirebaseInstanceId.getInstance().getToken(); 
     Logger.d("Refreshed FCM token: " + refreshedToken); 
    } 
} 

上规范标识的一些信息可以发现here

回答

3

更新

我最近重新对经典的ID这个议题,并得出以下结论。

在FCM中,由于Instance ID service的工作原理,标准ID似乎不再使用(或至少极少)。简而言之,该服务的作用是每个App Instance只有一个有效令牌。

如果较旧的令牌过期(无论出于何种原因),FCM会触发tokenRefresh事件,您将获得一个新的注册令牌,并且您还必须相应地处理它(在onTokenRefresh()中)。


简短回答,是的。这仍然是必要的。

onTokenRefresh()方法预计会在实际刷新令牌时触发。从那里开发者有责任将注册令牌发送给App Server。

但是如果您无法获得新的注册令牌(例如忘记保存它,删除它并且只有先前的注册令牌等),则可能会导致你(开发人员)发送给一个应该不再有效的注册令牌。这就是当规范ID进来

我想你可以把规范ID作为另一种安全措施,以便开发人员仍然可以获得有效的注册令牌的持有。 FCM文档here中提到了有关规范ID的详细信息(如何处理和处理)。

相关问题