這篇教程的主要目的是解釋怎么樣在你的iOS工程中創(chuàng)建并使用一個(gè).a文件察迟。
一.創(chuàng)建一個(gè)靜態(tài)庫(kù)工程
打開Xcode酗宋,點(diǎn)擊File\New\Project患亿,選擇iOS\Framework and Library\Cocoa Touch Static Library新建一個(gè)靜態(tài)庫(kù)工程.
將工程命名為SDKLearn,然后將工程保存到一個(gè)空目錄下距境。
一個(gè)靜態(tài)庫(kù)工程由頭文件和實(shí)現(xiàn)文件組成,這些文件將被編譯為庫(kù)本身垮卓。
當(dāng)創(chuàng)建靜態(tài)庫(kù)工程時(shí)垫桂,Xcode會(huì)自動(dòng)添加SDKLearn.h和SDKLearn.m。你不需要實(shí)現(xiàn)文件扒接,因此右鍵單擊SDKLearn.m選擇delete伪货,將它刪除到廢紙簍中。
創(chuàng)建一個(gè)HomeNewCommendView控件
是時(shí)候?yàn)槟愕膸?kù)添加一些功能了钾怔。由于本篇教程的關(guān)鍵在于教你怎么樣創(chuàng)建一個(gè)SDKLearn.a碱呼,而不是怎么樣構(gòu)建一個(gè)UI控件,你可以使用你自己封裝好的控件宗侦。將你的控件從Finder中拖到Xcode下SDKLearn目錄下愚臀。
這里有一點(diǎn)要注意了,這里一定要勾選以下三個(gè)選項(xiàng):
然后點(diǎn)擊 Finish 進(jìn)入工程:
對(duì)你的控件的頭文件需要做的另一件事是將其添加到庫(kù)的主頭文件SDKLearn.h中矾利。在這個(gè)主頭文件的幫助下姑裂,開發(fā)者使用你的庫(kù)僅僅需要導(dǎo)入一個(gè)頭文件,如下面的代碼一樣男旗,而不是自己去選擇自己需要的一塊導(dǎo)入舶斧。
接下來(lái)就生成靜態(tài)庫(kù)
1、靜態(tài)庫(kù)分為手機(jī)和模擬器兩種(手機(jī)端的只有手機(jī)能調(diào)用察皇,模擬器的只有模擬器能調(diào)用)茴厉。
首先,構(gòu)建模擬器的靜態(tài)庫(kù)什荣,如圖
然后show in Finder
之后我拿到這個(gè).a文件 還有和他相關(guān)的所有.h文件矾缓,存放在一個(gè)新的文件夾里(SDKLearn)如下
現(xiàn)在呢,你就可以拿著這個(gè)文件夾去揮霍了稻爬。將他拖到你要應(yīng)用了工程中
你以為這樣就完事了嗎嗜闻。上面已經(jīng)提到了,只能在模擬器上運(yùn)行桅锄,如果我們鏈接手機(jī):
上文說(shuō)了這是由于我們生成.a文件的時(shí)候琉雳,是生成的模擬器版本的样眠,想要在手機(jī)上用就要生成手機(jī)版本的,那么手機(jī)版本的怎生成呢翠肘?看圖吧吹缔。
改成Device 構(gòu)建構(gòu)成(command + R)你就會(huì)發(fā)現(xiàn) libSDKLearn.a 變黑了。
重復(fù)之前的步驟 就可以在手機(jī)上運(yùn)行了(但是锯茄,模擬器又不能用了。茶没。肌幽。。)
接下來(lái)抓半,我們就來(lái)生成一個(gè)雙方都能用的libSDKLearn.a
首先喂急,打開終端,復(fù)制以下命令
lipo(空格)-create(空格) 模擬SDK拖進(jìn)來(lái)(空格)真機(jī)SDK拖進(jìn)來(lái)(空格)-output (空格)你桌面地址拖進(jìn)來(lái)/libSDKLearn.a
說(shuō)明:
真機(jī)下的 .a:是你手機(jī)模式下可用的libSDKLearn.a
模擬器下的.a:是你模擬器下可用的libSDKLearn.a
雙方都可用的:是最后生成雙方都可用的libGGTestSDK.a --并存在在桌面
最后拿到的libSDKLearn.a 就哪里都可以用了!