【IOS開發】 XMPP 簡介和 XMPP 框架導入工程文件

翻譯自XMPP GettingStart 介紹頁


原理介紹

簡介

XMPP是一種基於標準通用標記語言的子集XML協議,具有超強的可拓展性。經過拓展的XMPP可以通過發送拓展的信息來處理用戶需求。XMPP包含了正對服務端的軟件協議,使之能夠與另一個進行通話。XMPP以Jabber協議爲基礎,而Jabber是即時通訊中常用的開放式協議。目前由IETF國際標準組織完成標準化工作。

標準化的核心分爲兩個部分

  • 核心的XML流傳輸協議
  • 基於XMLFreeEIM流傳輸的即時通訊擴展應用(這部分支持語音和視頻)

優點:

開放,它是開放源碼的,自由開放公開。
標準化,IETF 互聯網工程工作小組標準化
成熟,第一個jabber技術是在1998年開發的,現在已經相當穩定

開始使用XMPPFramework

本文演示一個運行了XMPPFramework框架的項目demo,這不是一個成熟的應用,僅僅展示了框架的使用方法。本demo僅僅使用了框架的一部分功能。當你決定添加XMPP框架到你自己的IOS應用中,本文將提供詳細的介紹。最好按照流程一步一步來,不要跳過某些步驟。

Setp1:

下載最新的代碼

Step2

框架有幾個依賴的文件,當你把XMPPFramework拿下來的時候,已經自動放在Vendor文件夾下面。我們將把每一個依賴文件過一遍。

第一個依賴包是CocoaLumberjack,它的位置:Vendor/CocoaLumberjack。拖進工程選擇copy,確保項目能夠編譯。

Step3
第二個依賴包是CocoaAsyncSocket,它的位置:Vendor/CocoaAsyncSocket,拖進工程選擇copy。
這個包需要你添加蘋果的CFNetwork framework和Security framework。Target -> Build Phases -> Link Binary With Libraries -> + ->選擇CFNetwork framework和Security framework。添加完後,確保項目能夠編譯。
Step4
第三個依賴包是KissXml,在Vendor/KissXML 可以找到。KissXML使用libxml2,你需要添加蘋果的libxml2庫 到工程文件中。在Targets->BuildSettings->Search Paths-> + ->/usr/include/libxml2

libxml2.需要你添加蘋果的CFNetwork framework和Security framework。Target -> Build Phases -> Link Binary With Libraries -> + ->選擇libxml2.dylb。

添加完後,確保項目能夠編譯

Step5
第四個,也是最後一個依賴包是LIBLdn,添加下面的三個文件到Xcode工程文件

  • Vendor/libidn/idn-int.h
  • Vendor/libidn/stringprep.h
  • Vendor/libidn/libidn.a

最後一個文件是靜態庫,支持x86*64, i386, ppc, armv6, armv7指令集,因此比較大1.3M。但你的應用打包時,它只會解壓你的應用需要用到的指令集對應的文件,所以不用擔心應用程序文件變大。添加完成後,確保項目能夠編譯。

Step6
添加以下的文件夾到工程中

  • Authentication
  • Categories
  • Core
  •  Utilities

Target -> Build Phases -> Link Binary With Libraries -> + ->選擇libresolv.dylib,添加完後,確保項目能夠編譯。

現在你已經可以開始使用XMPPFramwork 在你的項目中,
以下頁面你可以瞭解它的使用
https://github.com/robbiehanson/XMPPFramework/wiki/IntroToFramework


————————————————————我是分割線————————————————————


最後吐槽一下這個 XMPP GettingStart 介紹頁, 明明三言兩語就能說清楚的,羅裏吧嗦一大堆。

最後我自己的整理版本是這樣的:

添加以下的文件夾到工程中

  • Authentication
  • Categories
  • Core
  •  Utilities


添加Vendor下面的CocoaLumberjack、CocoaAsyncSocket、KissXml、LIBLdn文件夾道工程中,選擇copy。

添加蘋果的libxml2庫 到工程文件中。在Targets->BuildSettings->Search Paths-> + ->/usr/include/libxml2

添加蘋果的動態鏈接庫。Target -> Build Phases -> Link Binary With Libraries -> + ->選擇CFNetwork framework、libxml2.dylb、Security framework、libresolv.dylib。

最後確保編譯通過。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章