Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/187.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android GCM(谷歌云通讯)使用什么技术?_Android_Sockets_Http_Google Cloud Messaging_Comet - Fatal编程技术网

Android GCM(谷歌云通讯)使用什么技术?

Android GCM(谷歌云通讯)使用什么技术?,android,sockets,http,google-cloud-messaging,comet,Android,Sockets,Http,Google Cloud Messaging,Comet,它是否通过定期轮询服务器来工作? 它是否可以使用像comet这样的长时间http请求? 或者他们正在使用一些新技术 以下是一个很好的概述: 在某种程度上,它解释了GCM优于应用程序轮询,因为Android操作系统通过与GCM服务器的长期操作系统连接进行轮询。因此,尽管他们称之为“推送”技术,但它实际上是由设备进行轮询/拉取的。然后,操作系统会告诉应用程序有一条消息,应用程序会检索该消息。谷歌只是通过操作系统已经用来检查更新的一个渠道为所有应用程序做这项工作,这样当所有应用程序在未使用GCM的情况

它是否通过定期轮询服务器来工作? 它是否可以使用像comet这样的长时间http请求? 或者他们正在使用一些新技术

以下是一个很好的概述:

在某种程度上,它解释了GCM优于应用程序轮询,因为Android操作系统通过与GCM服务器的长期操作系统连接进行轮询。因此,尽管他们称之为“推送”技术,但它实际上是由设备进行轮询/拉取的。然后,操作系统会告诉应用程序有一条消息,应用程序会检索该消息。谷歌只是通过操作系统已经用来检查更新的一个渠道为所有应用程序做这项工作,这样当所有应用程序在未使用GCM的情况下检查回其服务器时,该设备就不会不断地进行轮询

有一些ID可以帮助操作系统知道哪个应用程序需要哪条消息,开发人员需要设置和维护一个服务器来帮助将消息“推送”到设备。可以有广播类型的消息或针对单个设备的消息。谷歌概述了几种不同类型的通信机制——HTTP和XMPP

没有真正的新技术——谷歌只是为开发者提供了一个平台/界面/架构


这些信息只是触及了表面——文档中有更多的细节。

谷歌和苹果似乎已经删除了对推送技术工作原理的任何引用。即使是你分享的谷歌GCM链接也已经更新,并且没有提到推送技术是如何仅仅是一个拉/投票。这似乎很明显,因为一个设备在任何给定的时间都可以有一个静态IP,这将导致服务器能够直接接触设备的安全问题。你知道还有其他的参考资料可以解释你在这里写了什么吗?嗯。看起来谷歌在2018年4月不推荐他们的GCM功能。他们现在向开发人员推荐他们的Firebase云消息:。我对此不太了解。我在回答中的信息是基于我所做的一些调查工作,但最终没有实施。