(八)即時(shí)通訊之XMPPFramework導(dǎo)入

XMPPFramework框架的導(dǎo)入有兩種方式
1.通過cocopods進(jìn)行配置,比較方便,但某些時(shí)候可能會配置不成功.
2.手動配置.需要導(dǎo)入XMPPFramework礦建并配置相關(guān)依賴以及一些處理,較為麻煩.

**下面介紹的就是手動配置XMPP框架 **

簡介

在提供的Xcode示例項(xiàng)目中,包含有在iOS中使用XMPPFramework的演示項(xiàng)目。您可以在Xcode/iPhoneXMPP文件夾中找到它绵咱。該項(xiàng)目的設(shè)計(jì)并不是為了演示一個(gè)完整的商業(yè)應(yīng)用,而僅是為了演示如何使用XMPPFramework框架课蔬,并提供有iOS平臺上需要使用的具體代碼。您可以隨意修改及測試該項(xiàng)目郊尝,并瀏覽AppDelegate文件中的代碼二跋。提示,該示例程序僅使用了框架中的一小部分功能流昏。
本文檔提供了如何將XMPPFramework框架添加到iOS項(xiàng)目的詳細(xì)說明扎即,您也可以參照iPhoneXMPP項(xiàng)目中的具體引用。
提示:請按照以下步驟逐一執(zhí)行况凉,而不要省略或者跳過某個(gè)步驟谚鄙。

  • 第一步
    使用源代碼管理器檢出最新版本的項(xiàng)目。默認(rèn)的分支包含有最新穩(wěn)定版本的代碼刁绒。
    github地址:https://github.com/robbiehanson/XMPPFramework
    下載對應(yīng)的壓縮包并解壓縮

  • 第二步
    盡管本框架包含有對其他項(xiàng)目的依賴闷营,不過您已無需再使用git去分別克隆這些項(xiàng)目。在克隆XMPPFramework框架的同時(shí)知市,這些項(xiàng)目會被同時(shí)克隆并保存在Vendor文件夾中傻盟。接下來,我們將逐一確認(rèn)每一個(gè)依賴嫂丙,以確保在完成最后一步工作之后娘赴,能夠正常編譯項(xiàng)目。
    第一個(gè)依賴是CocoaLumberjack跟啤,這是XMPPFramework框架使用的日志框架诽表。
    (有關(guān)日志框架的進(jìn)一步信息,可以參見XMPPFramework的介紹文檔隅肥,另外在Lumberjack的項(xiàng)目主頁中也提供有大量的文檔关顷。)
    將Vendor/CocoaLumberjack復(fù)制并添加入Xcode項(xiàng)目。
    Lumberjack不包含任何子依賴或特殊要求的框架武福。
    現(xiàn)在,請確認(rèn)您的項(xiàng)目可以正常編譯痘番。

  • 第三步
    第二個(gè)依賴是CocoaAsyncSocket捉片,這是XMPPFramework框架使用的底層網(wǎng)絡(luò)框架平痰。
    將Vendor/CocoaAsyncSocket復(fù)制并添加入Xcode項(xiàng)目。
    要使用此依賴伍纫,需要將蘋果的CFNetwork框架添加到項(xiàng)目宗雇。
    要使用此依賴,還需要將蘋果的Security框架添加到項(xiàng)目莹规。
    現(xiàn)在赔蒲,請確認(rèn)您的項(xiàng)目可以正常編譯。

  • 第四步
    第三個(gè)依賴是KissXML良漱,由于蘋果并沒有針對iOS提供NSXML類以處理NSXMLDocument舞虱、NSXMLElement、NSXMLNode母市,因此我們使用KissXML取而代之矾兜。
    將Vendor/KissXML復(fù)制并添加入Xcode項(xiàng)目。
    由于KissXML內(nèi)部使用到libxml2患久。因此還需要告訴Xcode在哪里可以找到libxml2的頭文件椅寺,并且在編譯完成后鏈接libxml2編譯庫。要做到這兩點(diǎn)蒋失,在項(xiàng)目的編譯設(shè)置中設(shè)置以下兩條編譯指令即可:

  1. Other Link Flags = -lxml2
  2. Header Search Paths = /usr/include/libxml2
    執(zhí)行完上述操作后返帕,請確認(rèn)您的項(xiàng)目可以正常編譯。
  • 第五步
    第四個(gè)以及最后一個(gè)依賴是libidn篙挽。將以下文件添加到項(xiàng)目中:
    Vendor/libidn/idn-int.h
    Vendor/libidn/stringprep.h
    Vendor/libidn/libidn.a
    上述最后一個(gè)文件libidn.a是一個(gè)靜態(tài)庫荆萤,支持包括:x86*64、i386嫉髓、ppc观腊、armv6、armv7等多種架構(gòu)算行。因而該文件的個(gè)頭也不小梧油,大約有1.7M。但是不用擔(dān)心州邢,編譯器會在編譯時(shí)僅提取架構(gòu)所需的內(nèi)容儡陨,并且只會提取被使用的那一部分,而由于框架中僅僅只用到了該靜態(tài)庫中很小的一部分內(nèi)容量淌。換言之骗村,該靜態(tài)庫的使用不會明顯增加您應(yīng)用程序的大小呀枢!
    注釋:libidn的源代碼包含在libidn-1.15.tar.gz中胚股。不過很顯然,沒有必要將其添加到項(xiàng)目之中裙秋。
    執(zhí)行完上述操作后琅拌,請確認(rèn)您的項(xiàng)目可以正常編譯缨伊。

  • 第六步
    將以下文件夾復(fù)制并添加入Xcode項(xiàng)目:
    Authentication
    Categories
    Core
    Utilities
    另外,還需將libresolv.dylib添加至Xcode項(xiàng)目进宝。
    執(zhí)行完上述操作后刻坊,請確認(rèn)您的項(xiàng)目可以正常編譯。

大功告成!!!

至此党晋,您已經(jīng)準(zhǔn)備好在項(xiàng)目中使用XMPPFramework框架了谭胚。后續(xù)的相關(guān)操作請參見:Intro to XMPPFramework文檔。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末未玻,一起剝皮案震驚了整個(gè)濱河市灾而,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌深胳,老刑警劉巖绰疤,帶你破解...
    沈念sama閱讀 218,036評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異舞终,居然都是意外死亡轻庆,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,046評論 3 395
  • 文/潘曉璐 我一進(jìn)店門敛劝,熙熙樓的掌柜王于貴愁眉苦臉地迎上來余爆,“玉大人,你說我怎么就攤上這事夸盟《攴剑” “怎么了?”我有些...
    開封第一講書人閱讀 164,411評論 0 354
  • 文/不壞的土叔 我叫張陵上陕,是天一觀的道長桩砰。 經(jīng)常有香客問我,道長释簿,這世上最難降的妖魔是什么亚隅? 我笑而不...
    開封第一講書人閱讀 58,622評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮庶溶,結(jié)果婚禮上煮纵,老公的妹妹穿的比我還像新娘。我一直安慰自己偏螺,他們只是感情好行疏,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,661評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著套像,像睡著了一般酿联。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,521評論 1 304
  • 那天贞让,我揣著相機(jī)與錄音采幌,去河邊找鬼。 笑死震桶,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的征绎。 我是一名探鬼主播蹲姐,決...
    沈念sama閱讀 40,288評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼人柿!你這毒婦竟也來了柴墩?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,200評論 0 276
  • 序言:老撾萬榮一對情侶失蹤凫岖,失蹤者是張志新(化名)和其女友劉穎江咳,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體哥放,經(jīng)...
    沈念sama閱讀 45,644評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡歼指,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,837評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了甥雕。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片踩身。...
    茶點(diǎn)故事閱讀 39,953評論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖社露,靈堂內(nèi)的尸體忽然破棺而出挟阻,到底是詐尸還是另有隱情,我是刑警寧澤峭弟,帶...
    沈念sama閱讀 35,673評論 5 346
  • 正文 年R本政府宣布附鸽,位于F島的核電站,受9級特大地震影響瞒瘸,放射性物質(zhì)發(fā)生泄漏坷备。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,281評論 3 329
  • 文/蒙蒙 一挨务、第九天 我趴在偏房一處隱蔽的房頂上張望击你。 院中可真熱鬧,春花似錦谎柄、人聲如沸丁侄。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,889評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽鸿摇。三九已至,卻和暖如春劈猿,著一層夾襖步出監(jiān)牢的瞬間拙吉,已是汗流浹背潮孽。 一陣腳步聲響...
    開封第一講書人閱讀 33,011評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留筷黔,地道東北人往史。 一個(gè)月前我還...
    沈念sama閱讀 48,119評論 3 370
  • 正文 我出身青樓,卻偏偏與公主長得像佛舱,于是被迫代替她去往敵國和親椎例。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,901評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 發(fā)現(xiàn) 關(guān)注 消息 iOS 第三方庫请祖、插件订歪、知名博客總結(jié) 作者大灰狼的小綿羊哥哥關(guān)注 2017.06.26 09:4...
    肇東周閱讀 12,103評論 4 62
  • 在綠衣少女倒下之后,天青雪走到了她的身前肆捕,蹲下刷晋,然后在她的身上摸索起來。 天青雪不知道到底是誰要?dú)⑺髁辏灾缓迷谶@...
    霜月落花閱讀 248評論 0 0
  • 悖論就是那個(gè)讓你畫個(gè)夠荆姆,又讓你畫個(gè)沒夠的東西蒙幻。 加上陰影仿佛華麗轉(zhuǎn)身。 沒有畫出胆筒,那個(gè)暗線也沒有關(guān)系邮破,只能讓你更期待……
    M有如果閱讀 344評論 3 9