GCM连接服务器如何向Android设备发送消息?

Jai*_*dra 5 android protocols push-notification google-cloud-messaging

我正在阅读有关Google Cloud Messaging(GCM)的文章.GCM连接服务器收到的推送通知将发送到启用GCM的Android设备.我假设在内部它使用设备Id(然后使用ARP协议从MAC解析为IP)来发送推送通知.GCM在内部使用哪种协议来提供通知?如果它是TCP/IP,那么它如何解析设备的IP(鉴于用户切换wifi网络和移动数据,这不是唯一的).

谁能帮助我理解从GCM到客户的沟通?

Bar*_*kar 15

  • GCM通过Google Play服务工作(没有Google Play服务的GCM)
  • 设备通过端口5228上的TCP连接到Google Play服务(443作为后备)
  • 设备每28分钟在移动设备上向Google Play服务发送一个心跳包,在无线网络上发送15分钟
  • 如果设备网络状态发生变化,设备必须重新建立与Google Play服务的TCP连接,这显然会导致问题
  • 可以检查连接状态,心跳间隔,连接地址和端口等拨号*#*#426#*#*的设备上

您可以在Google商品论坛上的这篇文章中找到更多信息.