當前位置:
首頁 > 最新 > iOS靜態庫實戰之Framework

iOS靜態庫實戰之Framework

需求

由於喜歡琢磨一些技術,這塊領域其實已經好多年就有人發表相關的技術文章,但是自己沒有親手實戰一次還真不能說是自己學到這門技術。前段時間研究了一下並動手做了一個靜態庫。效果挺好,也達到了我想要的預期結果並運用到了我實際項目中。今天重新翻看了一些資料,發現還有完善的地方,特意記錄一下,方便後期查閱。


戰前準備之.a與.framework庫的區別

總結:同一個靜態庫在不同程序中使用時,每一個程序中都得導入一次,打包時也被打包進去,形成一個程序。而動態庫在不同程序中,打包時並沒有被打包進去,只在程序運行使用時,才鏈接載入(如系統的框架如UIKit、Foundation等),所以程序體積會小很多,但是蘋果不讓使用自己的動態庫,否則審核就無法通過。

好了,已經了解了兩種類型庫的區別之後我們就開始動手製作自己的靜態庫吧。




1、設置需要公開的頭文件

2、修改生成的Mach-O格式

3、將項目的最低支持系統版本設置成iOS 8,可根據自己實際情況設置

這裡需要注意的是公開的頭文件里import了其他類也得添加到public中公開出來。如果不想將import的類公開出來,那麼在頭文件中用@class然後在對應的.m文件中再import

需要注意的是默認的Architectures是不包含armv7s,如果需要支持該架構,需要配置一下


1、創建Target

2、創建Run Script腳本

3、編寫執行腳本


大功告成!

最後我們來驗證下Framework支持哪些架構,相關指令格式如下:


iOS中.a與.framework庫的區別

Xcode 6製作動態及靜態Framework

關於ios開發framework及.a文件支持架構判斷以及合併

再一次感謝您花費時間閱讀這篇文章!

微博: @Danny_呂昌輝

博客: SuperDanny


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 AppleDeveloper 的精彩文章:

TAG:AppleDeveloper |