天天看點

搭建XMPP協定,實作自主推送消息到手機

關于伺服器端向Android用戶端的推送,主要有三種方式:

1.用戶端定時去服務端取或者保持一個長Socket,從本質講這個不叫推送,這是去服務端拽資料。但是實作簡單,主要缺點:耗電等

2.Google的C2DM,具體不細說,缺點,伺服器在國外,你懂得,不是很穩定。

3.XMPP協定,它是一種基于XML的傳遞協定,具有很強的靈活性和可擴充性。它的特點是将複雜性從用戶端轉移到了伺服器端。

聽說GTalk、QQ、IM等都用這個協定。

接下來說說XMPP在android用戶端上的應用。分兩部分:服務端搭建和用戶端實作。

搭建XMPP協定,實作自主推送消息到手機

服務端搭建:

如果想測試一下功能,直接用搭建好的服務就行,下載下傳androidpn-server-0.5.0-bin.zip ,由于附件太大,上傳不上來

下載下傳位址: http://115.com/file/clot4cuz#

點選bin目錄下得run.bat,直接搭好服務,在浏覽器上輸入  http://127.0.0.1:7070   就進入管理界面。如下圖:

搭建XMPP協定,實作自主推送消息到手機

如果你想自己更改服務,下載下傳附件 

搭建XMPP協定,實作自主推送消息到手機

  androidpn-server-0.5.0-src.zip (303.73 KB, 下載下傳次數: 12249)  ,自行修改。

展示一下管理的發送頁面:

搭建XMPP協定,實作自主推送消息到手機

用戶端實作:

下載下傳工程源碼 

搭建XMPP協定,實作自主推送消息到手機

  androidpn-client-0.5.0.zip (347.74 KB, 下載下傳次數: 12217)  ,導入工程,運作前更改一處IP位址,修改androidpn.properties檔案中的xmppHost為xmppHost=10.0.2.2

原因:模拟器通路本機需要改成10.0.2.2,下圖為SDK中說明。

搭建XMPP協定,實作自主推送消息到手機

運作界面上圖:

搭建XMPP協定,實作自主推送消息到手機
搭建XMPP協定,實作自主推送消息到手機

從服務端發送消息,用戶端運作的界面:

搭建XMPP協定,實作自主推送消息到手機
搭建XMPP協定,實作自主推送消息到手機

終于看到推送了。

【自己做個标記】原文位址:http://www.devdiv.com/%E6%90%AD%E5%BB%BAXMPP%E5%8D%8F%E8%AE%AE%EF%BC%8C%E5%AE%9E%E7%8E%B0%E8%87%AA%E4%B8%BB%E6%8E%A8%E9%80%81%E6%B6%88%E6%81%AF%E5%88%B0%E6%89%8B%E6%9C%BA-article-2761-1.html