我目前有一个小应用程序,我一直用来学习java / android编程。现在我有一个设置,一个手机上的应用程序发送请求(通过短信)到另一个运行相同应用程序的手机。远程电话接收请求并发回一些信息。接下来我想从网上试试这个。是否有建立的“最佳”方式?
我原以为我会让网络服务器通过谷歌云消息传递给设备,然后让设备将数据直接返回给网络服务器。 (不是我真的知道如何做到这一点)。
我看到有一个谷歌云消息传递返回路径(从设备发送消息到谷歌云服务器,但它似乎很新,我需要这样的东西吗?我想要的主要是能够问手机在我想要的时候做某事,没有轮询以查看是否有请求,或只是定期更新某些状态。
更新:
感谢下面的答案向我确认我是在正确的轨道上。 我现在有一些基本的功能。
我开始使用这个gcm android演示代码 https://code.google.com/p/gcm/source/browse/#git%2Fgcm-client%2Fsrc%2Fcom%2Fgoogle%2Fandroid%2Fgcm%2Fdemo%2Fapp%253Fstate%253Dclosed 而这颗红宝石 https://github.com/spacialdb/gcm/blob/master/README.md
在上面两个之间,我能够很容易地向手机发送信息。为了使往返工作,我在heroku上设置了一个非常简单的rails应用程序。 我在控制器的gcm gem中包含了示例代码的修改版本,然后使用 HttpPatch(需要rails 4)从我的手机发送帖子/补丁到我的网络应用程序,然后控制器将消息回传给我的手机。
我想让双向gcm的东西工作会很好,但我不确定是否有任何宝石可以处理它,而且我没有资格处理这样的任务:)
答案 0 :(得分:3)
我会说这是正确的电话:Google Cloud Messaging for Android
来自Android开发者网站:
这可能是一条轻量级消息,告诉您的应用有新数据 从服务器获取(例如,由电影上传的电影) 朋友),或者它可能是一个包含最多4kb有效载荷数据的消息 (因此即时消息等应用可以直接使用消息)。
在这种情况下,您不希望从服务器获取数据,但是您想要发送它们。
答案 1 :(得分:1)
作为初学者的简短直接答案:GCM(Google云消息传递)可以解决您的问题。但是,如果您的应用程序变得更大,那么其他更加技术性和复杂的解决方案也会出现。
请参阅this link。