Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android系統教程 >> Android開發教程 >> 淺析Android、iOS和Windows Phone中的推送技術

淺析Android、iOS和Windows Phone中的推送技術

編輯:Android開發教程

推送並不是什麼新技術,這種技術在互聯網時代就已經很流行了。只是隨著進入移動互聯網時代,推送技術顯得更加重要。因為在智能手機中,推送從某種程度上,可以取代使用多年的短信,而且與短信相比,還可以向用戶展示更多的信息(如圖像、表格、聲音等)。

推送技術的實現通常會使用服務端向客戶端推送消息的方式。也就是說客戶端通過用戶名、Key等ID注冊到服務端後,在服務端就可以將消息向所有活動的客戶端發送。

實際上,在很多移動操作系統中,官方都為其提供了推送方案,例如,Google的雲推送、IOS、Windows Phone7/8也都提供了類似的推送方案。不過這些推送方案的服務器都在國外,有一些推送服務(如Google的雲推送)在國內由於某些原因不太穩定,所以國內近幾年湧現出了很多專門為國人打造的推送服務。

本文將從各種流行移動操作系統入手介紹推送技術的各種實現方式。當然,我們的主要目的是討論Android的推送技術。

一、iOS的推送技術

Apple為IOS提供了很完美的推送方案,其基本原理是Apple提供了自己的推送服務器,叫APNS(Apple Push Notification Service,蘋果推送通知服務器)。而客戶端設備(IPhone、IPad等)直接與APNS建立長連接。不過向客戶端設備發送的消息並不是由APNS產生的,而是在需要發送消息的用戶自己提供的服務器(稱為Provider)中產生的,然後Provider將消息傳送給APNS,最後由APNS將消息傳送給客戶端設備。也就是說,消息最開始由Provider產生,然後Provider將消息傳送給APNS,最後再由APNS傳送給客戶端設備。消息傳遞的過程如圖1所示。

圖1

在發送消息到客戶端設備接收到消息的過程中,始終伴隨這一個令牌的傳送(device token)。要想使用APNS提供消息服務,應用程序需要先向IOS注冊需要提供的一個必要的信息就是與當前設備有關的device token,IOS在接收到devicetoken後,會向APNS查詢這個device token是否在APNS上注冊了(所有的IOS設備在第一次使用時都需要向蘋果服務器注冊一個賬號,否則無法從AppleStore下載應用,當然更無法使用推送服務了),如果已經注冊,APNS會直接向應用程序返回這個devicetoken。應用程序獲得這個devicetoken後,表示APNS已經允許向自己推送消息了,接著還需要將該device token發送給推送服務器(Provider)。到這裡應用程序已經成功將自己注冊到APNS中了。現在就可以通過Provider產生要推送的消息,然後Provider會將消息發送給APNS服務器,最後APNS服務器會直接向應用程序發送消息。這個過程比較復雜,不過看一下圖2的描述就會對這一過程更加了解了。每一個流程描述前面的數字表示發送的時間先後順序。

圖2

 

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved