1、android基於openfire+smack開發之【架構瞭解】

來源:互聯網
上載者:User
一、什麼是XMPP?

Extensible Messaging and Presence Protocol,簡單的來講,它就是一個發送接收處理訊息的協議,但是這個協議發送的訊息,既不是二進位的東東也不是字串,而是XML。
二、什麼是IM?

Instant Messenger,及時通訊軟體,就是大家使用的QQ、MSN Messenger和Gtalk等等。其中Gtalk 就是基於XMPP 協議的一個實現,其他的則不是。當前IM 幾乎作為每個上網者必然使用的工具,在國外的大型企業中有一些企業級的IM應用,但是其商業價值還沒完全發揮出來。設想既然XMPP 協議是一個公開的協議,那麼每個企業都可以利用它來開發適合本身企業工作,提高自身生產效率的IM;甚至,你還可以在網路遊戲中整合這種通訊軟體,不但讓你可以邊遊戲邊聊天,也可以開發出適合遊戲本身的IM 應用,比如說一些遊戲關鍵情境提醒功能,團隊語音交流等等都可以基於IM來實現。

三、整體架構圖是怎樣的?

 

 

四、架構中各個節點代表什嗎?

 Spark 提供了用戶端一個基本的實現,並提出了一個很好的外掛程式架構,這對於開發人員來說不能不說是一個福音。我強烈建議基於外掛程式方式來實現你新增加的功能,而不是去改它的原始碼,這樣有利於你項目架構,把原始項目的影響降到最低

Openfire 是基於XMPP 協議的IM 的伺服器端的一個實現,雖然當兩個使用者串連後,可以通過點對點的方式來發送訊息,但是使用者還是需要串連到伺服器來擷取一些串連資訊和通訊資訊的,所以伺服器端是必須要實現的。Openfire 也提供了一些準系統,但真的很基本的!慶幸的是,它也提供外掛程式的擴充,像Spark 一樣

Smack 是一個XMPP 協議的Java 實現,提供一套可擴充的API,不過有些時候,你還是不得不使用自己定製發送的XML 檔案內容的方式來實現自己的功能

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.