首先 先介紹一下什么是庫.所謂庫就是程序代碼的集合排嫌,是共享程序代碼的一種方式畸裳。庫的分類分為開源庫和閉源庫 至于什么意思 字面的意思相信你們也能看懂
靜態(tài)庫和動態(tài)庫的存在形式和使用區(qū)別
存在形式:
靜態(tài)庫
以".a"或者“.framework”為文件后綴名
動態(tài)庫
以".dylib"或者“.framework”為文件后綴名
這里先介紹一下以.a文件為后綴的吧
iOS 設備的CPU架構(gòu)
模擬器:
4s-5: i386
5s-7 Plus: x86_64
.a文件靜態(tài)庫打包
1、打開Xcode創(chuàng)建一個新的工程淳地,這里以Xcode9為例怖糊,選擇工程如下:
2帅容、創(chuàng)建工程完畢后,再創(chuàng)建一個工具類IOSState伍伤,添加一個方法用于測試
3、運行工程進行打包
運行完畢后扰魂,我們會看到工程中Products文件夾下的libStaticLib.a文件由紅色變成了黑色麦乞。右鍵show in finder可以在其目錄下找到它。這就是我們打包好的.a靜態(tài)文件了劝评。
4姐直、公開接口頭文件
targets->Build Phases->Copy Files->"+"你需要公開的頭文件
這里我們把新建的測試類StaticLibTool.h公開
將其導入到工程即可.
但是換模擬器后 則編譯不通過
只需設置適配所有模擬器架構(gòu)
project -> buildSeting -> Build Active Architecture Only 設為NO
設置完成后,我們重新運行打包靜態(tài)庫文件(這時你可隨便選一個模擬器)蒋畜,按照上述第6步終端查看其支持的架構(gòu)声畏,我們可以看到終端輸出的結(jié)果是同時支持 i386和x86_64,這也就意味著同時支持所有模擬器姻成。
打包支持真機架構(gòu)的靜態(tài)庫
所有流程都跟上面的一樣插龄,只是我們運行打包時要選擇真機運行,如下圖你可以選擇自己插上去的真機科展,也可以選擇Generic ios Devices绷耍。當然不要忘記了設置支持所有真機機型架構(gòu): Build Active Architecture Only? 設為NO处渣。
所有的都搞完 ?