我正在创建具有聊天功能的Android应用。如果不打开聊天时,我想创建一个通知,如果新消息到达。我的消息存储在火箱数据库中。我看到了两个创建这些通知的选项。一种是使用Firebase功能触发Firebase Cloud消息。另一个是使用经营OnChildAdded活动处理程序的意图服务。意图服务对我来说似乎更容易。我想念什么吗?在活动处理程序运行的事件处理程序上使用云消息传递是什么好理由?
如果您担心您的服务会一直在运行(并排干电池(,那么这是使用云功能的一个很好的理由。此外,您的服务可能会被杀死。
因为通常只有几个过程 用户可见,这意味着不应杀死服务 除了低记忆条件。但是,由于用户不是 直接意识到背景服务,在该状态下它被考虑 有效杀人的候选人,您应该为此做好准备 发生。特别是,长期运行的服务将越来越多 可能会杀死并保证被杀死(如果 适当(如果它们保持足够长的时间。
最后,将结果传递给活动所需的所有大惊小怪可能与开发云功能一样痛苦。
在我工作的公司中,我们决定使用云功能,这很容易。我们只需要跟踪设备的FCM令牌,我们的功能将在我们的实时数据库中监视某个节点。每当有人在那里写信时,我们都会被警告并能够采取行动(抓住节点,识别发件人和接收器,并使用保存的FCM令牌发送通知(。我们已经使用本教程来实现我们想要的东西。有关如何在此处,在此处编写云功能的一些链接以及我在这里也使用的一个问题。官方文档也。