制作framework靜態(tài)庫&構(gòu)建pod遠(yuǎn)程倉庫

一. 創(chuàng)建制作framework庫的工程,并進(jìn)行相關(guān)參數(shù)配置.

1.新建工程,選擇Cocoa Touch Framework.


截屏2020-07-18 下午8.40.22.png

2.進(jìn)入創(chuàng)建好的工程,講自帶的工程同名文件刪除,添加自己的類文件
3.TARGETS -->Build Settings,設(shè)置相關(guān)項.
(1) Build Active Architecture Only 設(shè)置NO(NO:支持所有設(shè)備,YES:只支持當(dāng)前真機和模擬器版本運行)
(2) Dead Code Stripping 設(shè)置為 NO (編譯優(yōu)化,舍棄無用代碼,非必須)
(3)Mach-O Type選擇為Static Library (默認(rèn)是動態(tài)庫,動態(tài)庫不支持上架)

截屏2020-07-18 下午8.40.48.png
截屏2020-07-18 下午8.42.01.png

(4) 設(shè)置framework最低支持版本iOS Deployment Target

![截屏2020-07-18 下午8.43.58.png](https://upload-images.jianshu.io/upload_images/6483406-8de2ec02605f72bd.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

4.TARGETS -->Build Phases,設(shè)置相關(guān)項

(1)展開Headers ,將需要暴露出來的頭文件,從Project中拖入到Public,不需要暴露的頭文件,不用動放在Project即可
5.Edit Scheme 設(shè)置為release 模式.

截屏2020-07-18 下午8.43.58.png
二. 編譯特定環(huán)境下的庫文件,并進(jìn)行合并Fat庫文件

1.分別在真機和模擬器環(huán)境下運行(Command+B)一遍
2.選中工程Products下的.framework文件,Show in Finder.
3.分別驗證信息,然后進(jìn)行架構(gòu)合并.
$ lipo -info 查看建構(gòu)信息
$ sudo lipo -create 真機路徑 模擬器路徑 -output 合并后的庫文件路徑/庫文件名

// 示例:
 sudo lipo -create 
/Users/pactepacterara/Desktop/庫文件/Release-iphoneos/SKWebView.framework/SKWebView 
/Users/pactepacterara/Desktop/庫文件/Release-iphonesimulator/SKWebView.framework/SKWebView
 -output 
/Users/pactepacterara/Desktop/SKWebViewFramework

4.驗證一下庫.

三. 上傳至github

1.在github上創(chuàng)建一個共有庫:

image.png

2.clone到本地,在該文件夾內(nèi)創(chuàng)建一個新的項目:
新建的項目一般會自帶一層目錄,可以將此目錄去掉,將準(zhǔn)備公開的庫文件放在一個文件夾中,同LICENSE,README文件放在同一目錄下:
結(jié)果如圖:


image.png

3.上傳到github上
4.創(chuàng)建或登錄trunk賬號

我們要讓用戶使用我們的的庫,就需要上傳到CocoaPod網(wǎng)站進(jìn)行托管.而要上傳文件到CocoaPod氧枣,就要創(chuàng)建trunk賬戶.

4.1 檢測是否已經(jīng)登錄
$ pod trunk me

如果沒有那么創(chuàng)建用戶
4.2 創(chuàng)建pod trunk 用戶
pod trunk register youxiang@163.com "YourName"

4.3 查收郵件
收到郵件睡蟋,點擊郵件的鏈接牙肝,會跳轉(zhuǎn)到一個頁面,提示驗證通過
執(zhí)行:$ pod trunk me
驗證一下

5.添加.podspec文件

我的代碼已經(jīng)提交到github上壤躲,還需要上傳到CocoaPod上,.podspec文件就是幫助用戶搜索到我們制作的庫文件的描述文件.

創(chuàng)建.podspec文件有兩種方法

方法一:復(fù)制已經(jīng)較成熟的第三方庫的.podspec文件到你的項目中,然后將各種信息改成你自己的
下面是我的.podspec


image.png

方法二:手動創(chuàng)建,先切到工程目錄,執(zhí)行命令
pod spec create 庫名
隨后會在當(dāng)前目錄下生成一個庫名. podspec文件,使用Xcode打開,編輯相關(guān)項:

6.將. podspec文件上傳到github

git add .
git commit -m "添加了 .podspec文件"
git push

7.添加tag標(biāo)記

git tag 1.0.0
git push --tags
這句話就是給我們的庫文件打tag滔金,這個tag一定要和.podspec文件內(nèi)容一一對應(yīng)圈澈,否則有問題

8.驗證podspec文件

我們?nèi)ヲ炞C自己的庫文件的時候霉涨,這樣寫

pod spec lint
或者
pod spec lint SKImageCodeTypeTool.podspec

但是有的時候會有一些warning,然后就驗證失敗,所以我們此時可以

pod spec lint SKImageCodeTypeTool.podspec --allow-warnings

9.上傳到Cocoapod:

如果剛才驗證惭适,沒有發(fā)現(xiàn)警告笙瑟,那么可以直接這個樣上傳
pod trunk push SKWebView.podspec

如果有警告,那么我們要去修改警告或者忽略警告
pod trunk push SKWebView.podspec --allow-warnings

上傳成功!


image.png
四.更新本地&查看上傳結(jié)果:

1.更新本地庫:

因為CocoaPod本身一直在集成很多開發(fā)者的庫癞志,他的master分支一直是在更新的往枷,但是你本地的庫相對于剛才上傳SKImageCodeTypeTool的時間節(jié)點你本地的庫是老的
所以我們要去更新一下本地的庫,具體操作:

pod setup //初始化
pod repo update//更新倉庫

2.查看上傳結(jié)果:

pod search SKImageCodeTypeTool //查找
會有一定延遲:
pod tunk me

可以再pop網(wǎng)站搜索
https://cocoapods.org

3.更新維護(hù)自己的庫

1.修改項目源碼
2.上傳github
3.修改.podspece內(nèi)部的版本號
4.打tag(同.podspece中版本號)
5.上傳tags
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市凄杯,隨后出現(xiàn)的幾起案子错洁,更是在濱河造成了極大的恐慌,老刑警劉巖戒突,帶你破解...
    沈念sama閱讀 216,843評論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件屯碴,死亡現(xiàn)場離奇詭異,居然都是意外死亡膊存,警方通過查閱死者的電腦和手機导而,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,538評論 3 392
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來隔崎,“玉大人今艺,你說我怎么就攤上這事∪韵。” “怎么了洼滚?”我有些...
    開封第一講書人閱讀 163,187評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長技潘。 經(jīng)常有香客問我遥巴,道長,這世上最難降的妖魔是什么享幽? 我笑而不...
    開封第一講書人閱讀 58,264評論 1 292
  • 正文 為了忘掉前任铲掐,我火速辦了婚禮,結(jié)果婚禮上值桩,老公的妹妹穿的比我還像新娘摆霉。我一直安慰自己,他們只是感情好奔坟,可當(dāng)我...
    茶點故事閱讀 67,289評論 6 390
  • 文/花漫 我一把揭開白布携栋。 她就那樣靜靜地躺著,像睡著了一般咳秉。 火紅的嫁衣襯著肌膚如雪婉支。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,231評論 1 299
  • 那天澜建,我揣著相機與錄音向挖,去河邊找鬼蝌以。 笑死,一個胖子當(dāng)著我的面吹牛何之,可吹牛的內(nèi)容都是我干的跟畅。 我是一名探鬼主播,決...
    沈念sama閱讀 40,116評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼溶推,長吁一口氣:“原來是場噩夢啊……” “哼徊件!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起悼潭,我...
    開封第一講書人閱讀 38,945評論 0 275
  • 序言:老撾萬榮一對情侶失蹤庇忌,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后舰褪,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,367評論 1 313
  • 正文 獨居荒郊野嶺守林人離奇死亡疏橄,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,581評論 2 333
  • 正文 我和宋清朗相戀三年占拍,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片捎迫。...
    茶點故事閱讀 39,754評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡晃酒,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出窄绒,到底是詐尸還是另有隱情贝次,我是刑警寧澤,帶...
    沈念sama閱讀 35,458評論 5 344
  • 正文 年R本政府宣布谈跛,位于F島的核電站埂陆,受9級特大地震影響学搜,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜山析,卻給世界環(huán)境...
    茶點故事閱讀 41,068評論 3 327
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望掏父。 院中可真熱鬧笋轨,春花似錦、人聲如沸赊淑。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,692評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽陶缺。三九已至钾挟,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間组哩,已是汗流浹背等龙。 一陣腳步聲響...
    開封第一講書人閱讀 32,842評論 1 269
  • 我被黑心中介騙來泰國打工处渣, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人蛛砰。 一個月前我還...
    沈念sama閱讀 47,797評論 2 369
  • 正文 我出身青樓罐栈,卻偏偏與公主長得像,于是被迫代替她去往敵國和親泥畅。 傳聞我的和親對象是個殘疾皇子荠诬,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,654評論 2 354