標簽:APP開發(fā) 成都川軟APP培訓 成都APP開發(fā)培訓
APP開發(fā)系列:為何手機APP關掉還能收到信息?
手機里面的APP關掉還能接收到消息的原理是什么?在智能手機的普及年代里,相信每人的手機上都安裝了五花八門的APP,有一個奇怪的現(xiàn)象,你明明把APP關掉了,那么為什么手機還是能夠收到消息呢?
手機發(fā)展到今天已經(jīng)成為我們每天必不可少的一部分了,社交娛樂工作都離不開智能手機。
每天手機也會收到不計其數(shù)的通知消息,無論是天氣信息,新聞資訊,還是老板的工作安排或是女朋友的撒嬌賣萌,到會即使的推送到你的手中。
不過有些朋友可能會問了,為什么我已經(jīng)關掉了APP還可以接收到消息通知呢?
想解答這個問題就要從手機的消息推送說起了。手機消息當然都是通過服務器推送到我們手機上的,對于iOS的用戶來說,蘋果有APNs服務器來負責消息的推送。
當你*次使用APP時,會詢問是否接收通知,如果你選擇了是,那么服務器就會記錄你的ID,當有消息通知的時候,這些數(shù)據(jù)是先推送到蘋果的服務器中,然后通過蘋果的APN服務器推送到用戶手機上的。
這樣的設計讓軟件徹底關閉的時候還可以接收到消息通知,一方面釋放內(nèi)存,一方面也不會耽誤接收消息。并且因為這樣的設計,類似Facebook,Twitter這類軟件在沒有科學上網(wǎng)的時候也可以接收到通知消息。
而在Android手機來說,谷歌也有類似的GCM服務器來推送消息,不過因為國內(nèi)的手機都沒有谷歌服務無法收到谷歌GCM服務器推送的消息,所以手機會用輪詢和長連接兩種方式來實現(xiàn)。
輪詢的話需要軟件定時的向服務器請求推送,不僅費時費力還要讓軟件一直有進程在后臺運行。
另一種也是目前國內(nèi)Android手機都在使用的是長連接的形式,通過第三方的推送服務器來推送消息通知,這樣的第三方服務有很多,國外如 Urban Airship, Parse等, 國內(nèi)有JPush,百度云推送,信鴿,LeanCloud等。
大致了解了消息推送的原理,大家就可以知道了,我們目前的消息通知都是通過第三方的服務器推送到我們的手機上的,這樣的一個推送的服務進程會一直運行在后臺保證消息及時推送。
所以即使你殺掉了軟件的進程,軟件的消息依然可以推送到你的手機上。