1

我目前有一个小应用程序,我一直在使用它来学习 java/android 编程。现在我有一个设置是一部手机上的应用程序向运行相同应用程序的另一部手机发送请求(通过短信)。远程电话接收请求并发回一些信息。接下来我想从网上试试这个。是否有一个既定的“最佳”方法呢?

我在想我会让网络服务器通过谷歌云消息向设备发送请求,然后让设备将数据直接返回到网络服务器。(并不是说我真的知道该怎么做)。

我看到有一个google cloud消息返回路径(从设备发送消息到google云服务器,但是看起来很新,我需要这样的东西吗?我想要的主要是能够要求电话在我想要的时候做一些事情,不要让它轮询以查看是否有请求,或者只是定期更新一些状态。

更新:

感谢下面的答案向我确认我走在正确的轨道上。我现在有了一些基本功能。

我开始使用这个 gcm android 演示代码 https://code.google.com/p/gcm/source/browse/#git%2Fgcm-client%2Fsrc%2Fcom%2Fgoogle%2Fandroid%2Fgcm%2Fdemo%2Fapp%253Fstate% 253Dclose 和这个红宝石宝石 https://github.com/spacialdb/gcm/blob/master/README.md

在上述两者之间,我可以很容易地向我的手机发送消息。

为了让往返工作正常,我在 heroku 上设置了一个非常简单的 rails 应用程序。我在控制器的 gcm gem 中包含了示例代码的修改版本,然后使用 HttpPatch(rails 4 需要)将帖子/补丁从我的手机发送到我的网络应用程序,然后控制器将消息回显到我的手机.

我想让两种方式的 gcm 东西工作会很好,但我不确定是否有任何宝石可以处理它,而且我没有资格处理这样的任务:)

4

2 回答 2

3

我会说这是正确的选择:适用于 Android 的 Google Cloud Messaging

从网站 Android 开发人员:

这可能是一条轻量级消息,告诉您的应用程序要从服务器获取新数据(例如,朋友上传的电影),也可能是一条包含高达 4kb 有效负载数据的消息(因此即时消息等应用程序可以直接消费消息)。

在这种情况下,您不想从服务器获取数据,但您想发送它们。

您可以通过不同的方式发送它们。由于您正在学习,我建议您尝试使用JAX-RS实现之一的RESTful解决方案。

于 2013-08-27T19:28:53.323 回答
1

作为初学者的简短直接答案:GCM(Google Cloud Messaging)将解决您的问题。但是,如果您的应用程序变得更大,那么也会出现其他更技术和更复杂的解决方案。

看到这个链接

于 2013-08-27T19:40:25.010 回答