当用户登录时,我需要将设备令牌设置为UID。这可能吗?如果是,如何?
您自己无法设置Firebase云消息的设备令牌。设置用户ID实际上是一种反模式,因为同一用户最终可能会在不同的设备上使用该应用程序。
如果您试图向用户发送消息(即使该用户在多个设备上(,您也需要自己将设备令牌与UID关联起来。我知道几种方法:
-
一种方法是将令牌组合到一个设备组中,然后向该设备组发送消息。
-
另一种方法是自己存储每个UID的设备令牌,例如在Firebase数据库或Cloud Firestore中,并在它们上循环以向用户的所有设备令牌发送消息。
-
第三种方法根本不需要管理令牌。相反:为每个用户创建一个主题,并让用户订阅自己的主题。我在使用Firebase数据库和云消息在Android设备之间发送通知中描述了这种方法。请注意,任何知道主题ID的人都可以订阅该主题,因此您应该只将这种方法用于公共(但有针对性(通信。