这可能是一个愚蠢的问题,但我需要确认,我没有其他人可以问。
我试图了解为 android 移动设备实现自己的推送通知的含义。这需要到服务器的持续 TCP 连接,尽管大部分时间它是空闲的。
我的假设是,即使在空闲时,为了使服务器能够通过 TCP 连接将数据推送到客户端,始终需要活动的 Internet 连接,并且如果连接中断(即用户关闭连接)这种推动将不再可能。
这个假设正确吗?
这可能是一个愚蠢的问题,但我需要确认,我没有其他人可以问。
我试图了解为 android 移动设备实现自己的推送通知的含义。这需要到服务器的持续 TCP 连接,尽管大部分时间它是空闲的。
我的假设是,即使在空闲时,为了使服务器能够通过 TCP 连接将数据推送到客户端,始终需要活动的 Internet 连接,并且如果连接中断(即用户关闭连接)这种推动将不再可能。
这个假设正确吗?
我会说是的,这确实是正确的。如果没有实时互联网连接,您将如何进行通信?
Afaik,Android C2DM 通过在用户没有实时网络连接时排队推送请求并在连接恢复时将它们发送给用户来处理此问题。您可以在解决方案的服务器端实现类似的行为。
答案是YES
要了解有关 C2DM 的最佳方法,您只需阅读此Google Project C2DM
他们提供了理解 C2DM 的工作和机制所需的完整文档,并提供了完整的示例。
我还有另一个最喜欢的教程是:Vogella's
你只需要给一个很好的时间来阅读这个东西并实施..
快乐编码:)
你说的对。C2DM 维护一个开放的套接字(使用 Market 或 Gmail 应用程序),用于识别您的设备。当然,您将需要 Wifi 或蜂窝网络来接收推送通知。