準備開發(fā)一個SDK喳资,方便各項目統一集成觉吭。自己開發(fā)的功能封裝起來還算容易,但是有時候需要借助一些三方的SDK仆邓,我們不能把三方的SDK直接打包進自己開發(fā)的SDK中鲜滩,但是自己的SDK還需要使用三方的功能。下面就說說是如何實現的节值,個人經驗徙硅,如有錯誤歡迎指正。文章分上下兩篇搞疗,本篇主要介紹不依賴三方SDK的開發(fā)方式嗓蘑,下篇iOS 開發(fā)自己的SDK--Cocoa Touch Framework(下)
開發(fā)SDK的方式有很多種,本文使用 Cocoa Touch Framework匿乃。
-
這種方式容易理解和實現桩皿,但是擴展性不夠,其他開發(fā)方案后續(xù)有需要會繼續(xù)研究幢炸。本文寫的會盡量詳細泄隔,以便剛接觸SDK開發(fā)的朋友快速集成。
主要流程如下
1阳懂、創(chuàng)建SDK工程 - MySDK
2梅尤、工程文件:工程會自動生成一個.h文件
這個文件的主要作用是添加我們SDK中想對外暴露的頭文件柜思,但是我們一般不使用岩调,開發(fā)時會直接把需要提供給外界的頭文件添加至 public 組,后面會說明
so 直接刪掉即可赡盘,工程目前白白凈凈
3号枕、添加類:將自己封裝好的功能添加到工程中
此時我們的framework還是紅色的,即還未進行編譯(這里封裝SDK的方式陨享,是將開發(fā)好的類添加到SDK工程中葱淳,也可以開一個workspace钝腺,邊開發(fā)邊測試,此處不詳細介紹)
4赞厕、版本設置:設置最低支持版本
5艳狐、類型修改:由于我們創(chuàng)建的是靜態(tài)庫,默認創(chuàng)建的是動態(tài)庫皿桑,需要對類型做修改
6毫目、設置對外的接口:將需要暴露的頭文件添加到public組
7、編譯:此時即可編譯工程诲侮,生成我們需要的framework镀虐。
需要注意的是:創(chuàng)建的framework分真機和模擬器兩種環(huán)境,所以要選擇不同的設備分別編譯沟绪,可以通過命令將這兩個文件合成刮便,同時支持真機和模擬器。
8绽慈、查看:選中工程中的framework恨旱,show in finder 就可以找到編譯后的的framework,此時就可以使用了久信,主要包含的文件如下:
9窖杀、導出,測試:新建工程裙士,測試剛剛創(chuàng)建的framework入客,添加方式與導入其他SDK相同
10、補充:
- 嚴格來說腿椎,我們創(chuàng)建的framework分四種類型桌硫,模擬器的Debug和Release,真機的Debug和Release啃炸,看具體需求選擇對應的類型即可铆隘。
- 版本合并可以使用終端通過命令實現。
- 實際開發(fā)中的SDK功能要比演示的demo復雜的多南用,本文只做整體介紹膀钠。
- Framework可以添加其他資源,比如圖片裹虫,Xib等肿嘲,創(chuàng)建bundle文件即可,這些比較容易實現筑公,不做詳細說明雳窟。
- 以上即為不依賴三方SDK創(chuàng)建Framework的方式。