我最近问了一个SO question,询问如何使用Firebase Messaging的主题向群组中的每个人发送消息,但触发通知的人除外(写入数据库中的组'部分) 。我得到了一个有趣的答案,涉及为我的iOS应用程序的每个用户创建一个主题,然后使用为每个成员创建的主题向组的每个成员发送一条消息。该主题的名称只是该人的名字,所以我只是遍历该组的成员' uid并向相应的主题发送消息(忽略触发用户的内容)。
使用此解决方案意味着我的应用程序的每个用户都有自己的主题(/topics/<uid1>
,/topics/<uid2>
等)。我想知道做这样的事情是否有任何缺点。它将简化我的云功能以发送消息,但我不确定在成本和性能方面是否有这么多主题是昂贵的。任何人都可以帮我弄清楚这是否是一个好的解决方案?
答案 0 :(得分:4)
我在这篇博文中使用了类似的方法:Sending notifications between Android devices with Firebase Database and Cloud Messaging。唯一的区别是我们在那里使用用户名,以便更容易阅读用例。
这种方法存在一些问题: