4

我一直在阅读有关 google Cloud Messaging 的信息,作为开发人员,我的问题是“这是为了什么?” 任何人都可以提供一个例子来说明它的用途吗?我不是在寻找源代码。相反,我对人们使用它的想法感到好奇。

4

1 回答 1

8

来自谷歌文档

Google Cloud Messaging for Android (GCM) 是一项服务,可帮助开发人员将数据从服务器发送到 Android 设备上的 Android 应用程序。这可能是一条轻量级消息,告诉 Android 应用程序有新数据要从服务器获取(例如,朋友上传的电影),也可能是一条包含高达 4kb 有效负载数据的消息(因此应用程序如即时通讯可以直接消费消息)。GCM 服务处理消息排队和传递到目标设备上运行的目标 Android 应用程序的所有方面

真的很不言自明。它只是一种将小消息从外部/网络服务发送到手机以供应用程序操作的机制。这比使用完全手动编码的协议实现依赖于 JSON 或 XML 之类的完整自定义包要容易得多。(并不是说经常使用“现成的”工具提供了一个非常优雅的解决方案!)

过去我正在实现一个简单的视频播客风格的应用程序;没什么了不起的——只是在等待来自服务器的新内容。在这种情况下,我必须专门编写代码,以便应用程序在启动时查询服务器,然后下载视频文件。另一种选择显然是应用程序每隔x分钟或小时查询一次服务器。

现在使用 GCM,我可以重写该应用程序并让服务器通知应用程序,而无需应用程序启动操作。自然,在移动设备上,这比让应用程序连接到服务器并无缘无故地多次查询更可取;并且它也比启动应用程序并在它从服务器请求更新时必须等待更可取。

上一段中的示例是显而易见的应用程序 - 但如果有一些想象,它可以用于更多用途。

我认为要记住的主要事情是为目的寻找工具,而不是为工具寻找目的!如果您需要它,它就在那里 - 但不要试图将它楔入不需要的地方!

于 2012-07-23T20:54:01.893 回答