2015-11-03 120 views
0

Android新手在这里。有人可以帮我理解我应该使用GCM的用例,并且我应该使用Volley吗? 据我所知,GCM是推拉式异步消息传递,带有一个小消息负载。如果我所有的联网请求都符合GCM有效载荷,那么对于非通知类型的联网,GCM会是更好的选择,还是应该考虑使用Volley?Android排球或Google云消息传递

+0

他们不这样做,所以他们不能比较。 Volley也可以是任何其他网络库。 Volley =客户端寻求与服务器联系,GCM =服务器寻求与客户联系 –

+0

他们是两个完全不同的东西,我相信你正在寻找别的东西。 – natario

+0

谢谢。为了简单起见,我想从“请求者”应用程序发送一些数据到服务器 - 让服务器处理它 - 向所有可以采取行动回复的合格应用程序发送通知 - 将回复发送到“请求者”应用程序。对所有这些通信使用GCM是否明智?或者我应该使用Volley作为'请求者'应用程序请求 - 响应周期和GCM来通知其他应用程序。 – Nirav

回答

1

你究竟想要完成什么?

GCM非常适合通知并同时将数据发布到大量设备。此外,聊天等基于时间关键处理的内容。

如果您碰巧在您的应用程序中有大量请求,甚至可能来自多个来源,那么排气管理就是用于管理/排队网络请求。他们可以排队,取消等。

+0

谢谢。为了简单起见,我想从“请求者”应用程序发送一些数据到服务器 - 让服务器处理它 - 向所有可以采取行动回复的合格应用程序发送通知 - 将回复发送到“请求者”应用程序。对所有这些通信使用GCM是否明智?或者我应该使用Volley作为'请求者'应用程序请求 - 响应周期和GCM来通知其他应用程序。 – Nirav

+0

GCM是你要走的路。绝对是为您的目的而设计的。看看演示应用程序,你会发现你想在那里做的大部分事情:https://github.com/google/gcm – LilaQ

0

因此,您需要知道这里为什么选择Volley和GoogleCloudMessaging?

乱射:

排球是使网络对于Android应用更容易,最重要的是,更快的HTTP库。 Volley通过开放的AOSP存储库提供。

Volley提供以下好处:

1。自动调度网络请求。

2。多个并发网络连接。

3。具有标准HTTP缓存一致性的透明磁盘和内存响应缓存。

4。支持请求优先级。

5。取消请求API。您可以取消单个请求,也可以设置要取消的请求的范围或范围。

6。易于定制,例如,重试和退避。

7。强大的排序使得使用从网络异步获取的数据可以很容易地正确填充您的用户界面。

8。调试和跟踪工具

Google云端通讯:

据谷歌文档: 谷歌云端通讯(GCM)是一项免费服务,允许开发人员服务器和客户端应用程序之间发送消息。这包括从服务器到客户端应用的下行消息,以及从客户端应用到服务器的上行消息。

例如,

轻量级的下游消息可能会通知客户端应用程序有新的数据要从服务器获取,例如“新电子邮件”通知。对于即时消息等使用案例,GCM消息可以将高达4kb的有效载荷传输到客户端应用程序。 GCM服务处理消息排队以及传送到目标客户端应用程序和从目标客户端应用程序传送的所有方面。