swift打包動(dòng)態(tài)/靜態(tài)庫,包括依賴第三方框架

swift打包庫踩坑

1、新建動(dòng)態(tài)包項(xiàng)目

1

2、配置支持版本,配置打包庫的類型(此出我們選擇動(dòng)態(tài)庫,關(guān)于這幾種庫的異同請(qǐng)百度)

2

3、添加測試文件,注意swift包,如果想被外部訪問,需要用public或open描述,且用@objc描述(以前是不需要的)

3

4、導(dǎo)入第三方庫,此處以SDWebImage為例.打包庫里不能使用cocoapod的方式導(dǎo)入三方庫,所以我去github下載了包,自己生成了iOS真機(jī)模擬器通用包(具體github有教程),導(dǎo)入第三方庫后在頭文件import

4

5、使用三方框架

5

6、添加需要支持的指令集(模擬器32位處理器測試需要i386架構(gòu),模擬器64位處理器測試需要x86_64架構(gòu),真機(jī)32位處理器需要armv7,或者armv7s架構(gòu),真機(jī)64位處理器需要arm64架構(gòu)。arm64e架構(gòu)用于A12芯片組,該芯片組在最新的2018 iPhone型號(hào)(XS / XS Max / XR)中添加)

6

7、設(shè)置打包環(huán)境,選擇release或者debug

7-1


7-2

8、編譯生成動(dòng)態(tài)庫

8-1


8-2

9、使用lipo -create -output命令生成真機(jī)模擬器通用包

9

10、使用最終生成的framework,導(dǎo)入生成的動(dòng)態(tài)庫,導(dǎo)入依賴的sdwebimage庫,設(shè)置embed & sign

10-1

導(dǎo)入使用報(bào)錯(cuò),找不到x86_64對(duì)應(yīng)的模擬器指令集文件

10-2

我們cd到剛才生成的動(dòng)態(tài)包目錄,查看包支持的指令集(lipo -info),顯示是有是有x86_64的

10-3

最后找到原因,

10-4

最后得到

10-5

11、重新導(dǎo)入生成的framework,成功編譯使用,真機(jī)模擬器都可以使用

11
最后編輯于
?著作權(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),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

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

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