iOS基礎(chǔ)知識之創(chuàng)建靜態(tài)庫

簡介

日常開發(fā)中會用到各種已經(jīng)封裝好的庫邮破,比如微信支付邻吞、高德地圖SDK,方便上層業(yè)務(wù)使用對應(yīng)的能力橱脸。庫是共享程序代碼的方式础米,一般分為靜態(tài)庫和動態(tài)庫。

  • 動態(tài)庫與靜態(tài)庫的區(qū)別:
    • 靜態(tài)庫:連接時完整地拷貝至可執(zhí)行文件中添诉,被多次使用就有多份冗余拷貝
    • 動態(tài)庫:連接時不復(fù)制屁桑,程序運(yùn)行時由系統(tǒng)動態(tài)加載到內(nèi)存供程序調(diào)用,系統(tǒng)只加載一次栏赴,多個程序共用蘑斧,節(jié)省內(nèi)存。系統(tǒng)的.framework是動態(tài)庫艾帐,我們自己建立的.framework是靜態(tài)庫
  • .a與.framework的區(qū)別
    • .a是一個純二進(jìn)制文件乌叶,.framework中除了有二進(jìn)制文件之外還有資源文件
    • .a文件不能直接使用,至少要有.h文件配合柒爸,.framework文件可以直接使用
    • .a + .h + sourceFile = .framework

創(chuàng)建步驟

使用pod創(chuàng)建framework

  • pod lib create 庫名

使用xcode創(chuàng)建framework

  • 打開xcode准浴,新建工程:Xcode->File->New->Project,選擇Framework
image.png
  • 填寫工程名稱捎稚,選擇創(chuàng)建路徑乐横,保存


    image.png
  • 選擇對應(yīng)Target,在Deployment Info里選擇支持的版本
image.png
  • 設(shè)置Build Settings相關(guān)參數(shù)
    • 設(shè)置 DEPLOYMENT_POSTPROCESSING = YES
    • 設(shè)置 STRIP_STYLE 為 Debugging Symbols
    • Build Settings -> Compiler Flags添加 -fembed-bitcode 參數(shù)
    • 確認(rèn)Build Settings -> Enable Bitcode 為YES(默認(rèn)是)
    • 設(shè)置Mach-O Type為static library今野,保證產(chǎn)物是靜態(tài)庫
    • Build Active Architecture Only 為 NO葡公,修改為NO, 否則生成的靜態(tài)庫就只支持當(dāng)前設(shè)備的架構(gòu)

添加podfile

用終端打開根目錄,輸入pod init 条霜,可以創(chuàng)建Podfile文件催什,可在里面依賴其他SDK

target 'XXFramework' do
  # Comment the next line if you don't want to use dynamic frameworks
  use_frameworks!

  # Pods for XXFramework

end

添加podspec

如果需要被其他工程依賴,可通過添加podspec來描述宰睡。用終端打開根目錄蒲凶,輸入pod spec create XXFramework气筋,默認(rèn)創(chuàng)建的描述比較全,可根據(jù)具體需求進(jìn)行修改旋圆。此文不做具體描述宠默,后續(xù)會專開一文。

編譯

同時按住 cmd+b灵巧,即可運(yùn)行編譯搀矫。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市刻肄,隨后出現(xiàn)的幾起案子瓤球,更是在濱河造成了極大的恐慌,老刑警劉巖敏弃,帶你破解...
    沈念sama閱讀 206,311評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件冰垄,死亡現(xiàn)場離奇詭異,居然都是意外死亡权她,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,339評論 2 382
  • 文/潘曉璐 我一進(jìn)店門逝薪,熙熙樓的掌柜王于貴愁眉苦臉地迎上來隅要,“玉大人,你說我怎么就攤上這事董济〔角澹” “怎么了?”我有些...
    開封第一講書人閱讀 152,671評論 0 342
  • 文/不壞的土叔 我叫張陵虏肾,是天一觀的道長廓啊。 經(jīng)常有香客問我,道長封豪,這世上最難降的妖魔是什么谴轮? 我笑而不...
    開封第一講書人閱讀 55,252評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮吹埠,結(jié)果婚禮上第步,老公的妹妹穿的比我還像新娘。我一直安慰自己缘琅,他們只是感情好粘都,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,253評論 5 371
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著刷袍,像睡著了一般翩隧。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上呻纹,一...
    開封第一講書人閱讀 49,031評論 1 285
  • 那天堆生,我揣著相機(jī)與錄音专缠,去河邊找鬼。 笑死顽频,一個胖子當(dāng)著我的面吹牛藤肢,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播糯景,決...
    沈念sama閱讀 38,340評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼嘁圈,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了蟀淮?” 一聲冷哼從身側(cè)響起最住,我...
    開封第一講書人閱讀 36,973評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎怠惶,沒想到半個月后涨缚,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,466評論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡策治,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,937評論 2 323
  • 正文 我和宋清朗相戀三年脓魏,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片通惫。...
    茶點(diǎn)故事閱讀 38,039評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡茂翔,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出履腋,到底是詐尸還是另有隱情珊燎,我是刑警寧澤,帶...
    沈念sama閱讀 33,701評論 4 323
  • 正文 年R本政府宣布遵湖,位于F島的核電站悔政,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏延旧。R本人自食惡果不足惜谋国,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,254評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望迁沫。 院中可真熱鬧烹卒,春花似錦、人聲如沸弯洗。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,259評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽牡整。三九已至藐吮,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背谣辞。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評論 1 262
  • 我被黑心中介騙來泰國打工迫摔, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人泥从。 一個月前我還...
    沈念sama閱讀 45,497評論 2 354
  • 正文 我出身青樓句占,卻偏偏與公主長得像,于是被迫代替她去往敵國和親躯嫉。 傳聞我的和親對象是個殘疾皇子纱烘,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,786評論 2 345

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