Android推送通知教程:如何向“粉丝”发送通知?

时间:2016-06-06 13:40:20

标签: android firebase google-cloud-messaging

我编写了一个测试应用程序,用户可以将一些数据(位置,照片,标签等)发布到他们的“提要”(即将一些数据写入当前Firebase的在线数据库)。如果其他用户“关注”此用户(或相关标签),如何向关注者发送新数据可用的通知?

我查看了Google云消息传递和替代Firebase云消息传递,但我发现他们的文档对我来说太技术化(似乎针对的是I.T.专业人员)。我可以编程,但不是真正理解“服务器”,“协议”等。从GCM / FCM文档来看,我需要一个“服务器”才能使用他们的服务。

这个服务器
  • 识别数据库事件何时发生。

  • 运行一些逻辑以确定是否需要发送通知(以及向谁发送)

  • 通知GCM或FCM。

这是对的吗?如果是这样,我不知道如何获得服务器,写一个,插入一个或任何它我应该用一个。任何人都可以给新手开发者的任何建议或简单的教程非常感谢!

谢谢, RIZ

1 个答案:

答案 0 :(得分:1)

您似乎正在尝试实施GCM Topic Messaging,其中您的应用服务器会向订阅特定"主题"的多个设备发送消息。虽然这个特殊功能似乎并不可行,但它是可行的。

在您的关注者收到通知之前,他们必须先订阅主题。

以下是如何在Android中实现:

private void subscribeTopics(String token) throws IOException {
    GcmPubSub pubSub = GcmPubSub.getInstance(this);
    for (String topic : TOPICS) {
        pubSub.subscribe(token, "/topics/" + topic, null);
    }
}

试试这个实际的演示来掌握这个:

GCM Playground - 操场形式的GCM Application Server参考实现,开发人员可以使用它来测试Google Cloud Messaging Service。

由于Google现在鼓励用户使用FCM,请尝试使用FCM Android Quickstart。您还可以通读此SO post以获取更多信息。