iOS 靜態(tài)庫制作 .a .framework .bundle

一、最近項目需要(做SDK)所以研究了一下靜態(tài)庫的制作以及圖片的導(dǎo)入。

二、下面主要以截圖的方式說明打包靜態(tài)庫的過程。

1、.a 的靜態(tài)庫步驟如下:

1)首先新建工程選中 Cocoa Touch Static Library 然后點擊Next按鈕。

a.1.png

2)然后起名MJCASDK,注意:這時候會幫我們自動創(chuàng)建和工程名字一樣的類文件(包含.h 和 .m),此時Products文件下的libMJCASDK.a文件是紅色的。
a.2.png

3)相關(guān)配置。公開公共接口文件和相關(guān)方法,如下圖點擊New H eaders Phase:


a.3.png

接著直接把需要暴露出來的.h文件拖到Public列表下:


image.png

4)以上算是初步配置完善,注意,如果靜態(tài)庫中引入了類別(Category)的話,此時打成靜態(tài)庫是沒有問題的,但是在用這個靜態(tài)庫的工程中,調(diào)用Category中的方法時會有找不到該方法的運行時錯誤(selector not recognized),解決辦法是:在使用靜態(tài)庫的工程中配置other linker flags的值為-ObjC。

5)配置完成之后分別在模擬器和非模擬器上編譯一下,這時候Products下的libMJCASDK.a文件就變黑色了,然后點擊show in finder 查看如下圖。


image.png

6)最后將模擬器和真機上的.a文件合并成一個文件即可。命令如下:

lipo -create  真機版本.a靜態(tài)庫路徑   模擬器版本.a靜態(tài)庫路徑  -output  合并后的.a靜態(tài)庫路徑

注意中間有空格;

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

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

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