当应用程序完全关闭时,Whatsapp如何保持与套接字的连接。
Whatsapp是否使用GCM或APNS推送来触发应用程序与Ejabberd同步?有人说它总是保持联系(我对此很新)但我测试我重新启动我的手机,清除内存,AppManager强制关闭Whatsapp,它仍然收到消息。所以想知道你可以在操作系统级别上运行代码来保持连接在每次关闭时的连接吗?或者只是将GCM用于触发器?
当没有应用在后台运行时,手机的唯一连接是Android GCM吗?
我很困惑,如果Whatsapp确实使用XMPP协议,那么当应用程序完全关闭时,应用程序如何保持与服务器的连接?
我进一步研究,发现Pubnub正在运行与TCP或XMPP协议类似的东西,可以在应用程序的后台研究消息....但不是IOS。 http://www.pubnub.com/knowledge-base/discussion/381/can-my-ios-app-receive-messages-while-inactive
它需要APNS推送首先唤醒应用程序然后重新建立连接。但Whatsapp怎么样?看起来像Appstore合规性问题?但AppStore允许许多应用程序在后台运行,但是它是否允许Pubnub或具有连接的应用程序在后台保持活动状态?
答案 0 :(得分:1)
要在iOS上构建聊天应用程序,在所有情况下几分钟后您将断开连接。您需要做的是依靠Apple推送通知服务让用户知道已收到新消息。
这意味着您必须确保修改ejabberd以便能够利用推送通知服务,而不仅仅依靠可用的XMPP连接来告诉用户有关新消息的信息。