IOS使用的技术叫做:APNS(Apple Push Notification Service)
Android使用的官方技术叫做:GCM(Google Clouding Messaging)
但是Android的GCM是开发者自己选的也可以自己实现,但是IOS就必须要走他的APNS才可以。
APNS和GCM本质上都是在系统中存在一个基于TCP协议的一个长连接,一直保持与服务器的连接,
即使手机睡眠也会一直保持联系。
这样你可能会产生一个疑问:这样岂不是会很费电?
事实上不是这样的,TCP长连接有个心跳时间(这个名字很有意思嘛,就像人的心脏一样,我们会觉得
心脏一直跳啊跳不会衰老很快吗?但是医学研究表明:心脏的收缩与舒张的时间比在1:2左右,也就是说
心脏2/3的时间在消息呢!),原因与这个类似,在长连接中,客户端与服务器在传输数据的时候传输数据