如何使用 Android 代码中的 GCM CCS 进行上游消息传递服务?
Posted
技术标签:
【中文标题】如何使用 Android 代码中的 GCM CCS 进行上游消息传递服务?【英文标题】:How to do upstream messaging service using GCM CCS from Android code? 【发布时间】:2014-07-14 07:19:44 【问题描述】:我正在尝试使用 GCM 的 CCS 实现消息传递服务...我已经以正常方式实现了 GCM,我使用第三方服务器和带有 GCM Sender id 的浏览器密钥向设备发送通知,效果很好。
我已尝试使用以下链接实施 CCS
Tutorial
其中有两个项目,一个用于 android,另一个用于 Java。我暂时不担心服务器应用程序,因为我也可以使用 php 功能。但是,我没有找到一种方法让 Android 应用程序在代码中与服务器应用程序连接,而其他示例对项目有同样不切实际的结局。如果我可以使用 HTTP 连接将registrationId 发送到我的服务器,我将如何从应用程序向GCM-CCS 发送上游消息?
我希望一台设备向 CCS 应用程序发送消息,并且该消息将广播到包括发送方在内的所有注册设备。
以下教程链接也是伪造的链接,我不明白它试图做什么。
Another Tutorial
Google 必须提供有关 CCS-GCM 的明确说明。
【问题讨论】:
【参考方案1】:请参考此链接 -
http://developer.android.com/reference/org/apache/http/client/methods/HttpPost.html
一个小教程- http://www.androidhive.info/2011/10/android-making-http-requests/
对于从应用程序向后端发送消息,您可以使用 json 编码。和 POST parms 到 url 或你的服务器,做这样的事情 -
// Building Parameters
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("message", post_message));
Log.d("request!", "starting");
//Posting user data to script
JSONObject json = jsonParser.makeHttpRequest(
POST_URL, "POST", params);
JSONObject 是你的 json 解析器先生
一个很好的 json 解析器教程 - http://eclipsesource.com/blogs/2013/04/18/minimal-json-parser-for-java/
根据您的编辑,您的后端收到以 json 编码的消息后,将它们保存在数据库中,然后最后使用 GCM 将消息发送到所有注册的设备
【讨论】:
我知道如何使用 HTTP 请求,我在我的问题中也说过。我的问题是,上游消息是否与上游消息相同,该消息将被传递到 Google XMPP 服务器以便它使用 GCM 的 CCS? @Saty Sir,使用 json 解析/编码并发出 http 请求,我用我通常使用的方式进行了修改 @jimmy...你没有明白我的意思...我不担心http帖子或我应该做的方式...我在问GCM-CCS的程序上游消息传递? @Saty 先生,我使用 json 编码将消息上游到我的后端 GCM,正如我所提到的 - `params.add(new BasicNameValuePair("message", your_post_message)); `【参考方案2】:我认为您需要使用 XMPP 连接来发送上游消息。请参阅https://developers.google.com/cloud-messaging/ccs#upstream 以获取上游消息传递的描述以及示例代码。 (这也是我了解到您需要使用 XMPP 而不是 HTTP 的地方。抱歉,我目前没有更具体的答案可提供,我自己仍在研究如何做到这一点。
【讨论】:
以上是关于如何使用 Android 代码中的 GCM CCS 进行上游消息传递服务?的主要内容,如果未能解决你的问题,请参考以下文章
无法使用 XMPPHP 将我的应用服务器连接到 GCM 的 CCS [关闭]
GCM CCS 上游消息是不是强制重新连接到 GCM 网络?
在带有 HTTP 服务器(不是 CCS/XMPP)的 Android GCM 应用中接收消息