java - 将我现有的服务器连接到 GCM

标签 java android sockets client-server google-cloud-messaging

我在 Android 应用程序和服务器上开发了一个客户端,但现在我发现了 GMC -“Google Cloud Messaging for Android”

有什么方法可以将 GCM 连接到我的服务器,而不需要更改所有内容?

客户端通过socket向服务器发送数据,我需要的是服务器将数据发送给GCM,GCM将数据发送给所有客户端。

我不需要客户端向 GCM 发送数据,我所需要的只是:

客户端 -(套接字)--> 服务器 ---> GCM ---> 客户端

有人知道如何做到这一点吗?

提前致谢!

最佳答案

您可以从 Java 服务器发送 GCM 消息。最简单的方法是使用 Google 提供的服务器库 (gcm-server.jar)。

发送消息的代码很简单:

Sender sender = new Sender(apiKey);
Message message = new Message.Builder()
    .delayWhileIdle(true)
    .addData("key1", "value1")
    .addData("key2", "value2")
    .build();
Result result = sender.send(message, registrationId, numOfRetries);

此外,您还必须检查结果,看看您的消息是被 GCM 服务器接受还是拒绝。

此示例演示如何向单个设备发送消息。有类似的方法可以将相同的消息发送到多个设备。

最后,您必须实现一些 Web 服务,该服务从您的应用接受注册 ID,并将其保存在数据库中。

关于java - 将我现有的服务器连接到 GCM,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24918842/

相关文章:

java - 从 facebook 解析大图像

java - java中是否有等效的asm nop?

java - 用条件检查两个变量的符号

java - 从现有对象创建新对象,如何使它们独立 - java

android - margin 仍然存在于替换的 fragment 中

c - recv()对于大量数据不起作用

java,将任何语言环境的字符串转换为 double

android - 我应该将 Ionic Platforms 文件夹放入源代码管理吗?

c - 如何在套接字编程c中从telnet客户端读取服务器上的参数

c - UDP 和套接字,recvfrom() 返回 -1 且资源暂时不可用