網(wǎng)絡(luò)服務(wù)層(socket.io)抽取記錄

前言:

隨著公司業(yè)務(wù)的發(fā)展,代碼解耦模塊化是必然趨勢(shì)。功能模塊抽取封裝想必很多人都經(jīng)歷過(guò)。今天的主要目的不是談這些,是想記錄下在抽取網(wǎng)路服務(wù)層的過(guò)程中遇到的一些問(wèn)題。

目的:

抽出來(lái)的代碼放到任何一個(gè)新工程中都能正常使用。
過(guò)程


具體過(guò)程

  • 既然不僅自己可以用,還要給別人用。那當(dāng)然不能給源碼,打包成靜態(tài)庫(kù)。
  • 依賴三方庫(kù):“Socket.IO-Client-Swift” 和“JSONKit”,打包的時(shí)候當(dāng)讓不能把這些也打進(jìn)去。

1. 創(chuàng)建工程,過(guò)程可見(jiàn)http://www.itdecent.cn/p/beb9b658ce30

2. CocoaPods 集成

7B1F0FD0-8AF0-49FC-BE87-2AC2ABD11042.png
  • 編譯一把會(huì)會(huì)很多錯(cuò)誤:


    2B881C44-5AC3-44D8-A36A-42C667D0DFAB.png
  • 直接fix,這是三方的JSONKit 報(bào)錯(cuò),應(yīng)該是蓋庫(kù)沒(méi)更新引起的,反正我們做的包運(yùn)行依賴于JSONKit,但是打包是沒(méi)有將這些三方的東西打進(jìn)去的,解決錯(cuò)誤是為了順利通過(guò)編譯。完了就能編譯通過(guò)。

  • 添加我們自己需要打包的代碼


    93F48982-928E-4C1C-A5FA-089F2573AD6B.png

    編譯下回報(bào)錯(cuò),這里主要是因?yàn)橛械奈募荕RC的,設(shè)置下就好了。-fno-objc-arc

  • 打包靜態(tài)庫(kù),方法參照http://www.itdecent.cn/p/beb9b658ce30 注意配置

  • Build Active Architecture Only = NO

  • 支持的最低版本

  • 設(shè)置暴露的頭文件
    BuildPhase 點(diǎn)擊+ 添加New Header Fhase


    CB537E37-6C73-4804-93DC-9CC3A3D80A30.png

    我這里只要暴露一個(gè)包含所有接口的頭文件。
    編譯結(jié)果


    A4DCCC21-7D3B-471D-8026-2427107FCF50.png

3.測(cè)試

DF9C2A8F-B7AD-4B02-9BCD-853CDE3C23DC.png

Run 會(huì)報(bào)錯(cuò),.JSONKit問(wèn)題,fix. 完成運(yùn)行會(huì)成功,但是最后會(huì)crash
929348EF-CDF1-473A-9C28-E9F8DEDC9F78.png

報(bào)錯(cuò)找不到md5Hash方法,這是由于該方法寫在一個(gè)分類中,如果,第三方庫(kù)中有 category,需要設(shè)置為 -ObjC


77DEB051-EB2A-4661-881A-C3D0D551037E.png

在運(yùn)行大功告成

18C280E1-51E4-4B0B-A41D-9083D5E6E564.png

注意:在集成JSONKit時(shí)候,如果發(fā)現(xiàn)#import"JSONKit.h"找不到,即發(fā)現(xiàn)import的時(shí)候沒(méi)有提示JSONKit的文件,可以在target-Build Settings下修改“User Header Search Paths”項(xiàng),新增${SRCROOT}并選擇rcursive,

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 大質(zhì)量的物體會(huì)導(dǎo)致空間彎曲, 而這又影響了物質(zhì)的運(yùn)動(dòng), 這是引力的真正本質(zhì)。 -完- ?嚴(yán)正法律聲明 本文版權(quán)受我...
    更好時(shí)代閱讀 89評(píng)論 0 2
  • 從第一次填 山初小學(xué)畢業(yè)登記表 至今 填過(guò)的表格五花八門 每一次 在“籍貫”那一欄 我都想把南日島填上 我想寫上 ...
    種樹劉郎閱讀 507評(píng)論 0 1
  • 1.對(duì)Targets的理解 關(guān)于Targets,Apple的人是這樣說(shuō)的: “ Targets that defi...
    稻草人12138閱讀 3,518評(píng)論 0 1
  • 馬戈 井通平臺(tái)要上區(qū)塊鏈和實(shí)體企業(yè)ico,要做交易所,宣傳工作總要先行吧,首先有一個(gè)面向公眾的網(wǎng)頁(yè),介紹井通公司、...
    許中陽(yáng)閱讀 312評(píng)論 0 0

友情鏈接更多精彩內(nèi)容