轉(zhuǎn)載請(qǐng)注明原鏈接:http://www.reibang.com/p/950026d788bd
一萨蚕、前言
這兩天被cocoapods折磨的心力憔悴茶没〕儆纾看cocoapods官網(wǎng)的添加支持,但是介紹的(ying)比(yu)較(tai)簡(jiǎn)(cha)單道逗,而且有的步驟也沒(méi)有寫(xiě)上奸焙,導(dǎo)致看著官方文檔也沒(méi)有成功瞎暑,后來(lái)查閱了簡(jiǎn)書(shū)彤敛、CocoaChina等等,還是已經(jīng)接近崩潰了赌。沒(méi)有一個(gè)完整的介紹墨榄。索性多個(gè)文檔對(duì)比測(cè)試,最后終于成功的讓自己Github上的庫(kù)成功支持Cocoapods安裝勿她。
二袄秩、開(kāi)始
這里我將從最初的開(kāi)始進(jìn)行介紹,包括Github上創(chuàng)建項(xiàng)目已經(jīng)上傳項(xiàng)目逢并,到最后的支持Cocoapods播揪。
步驟如下:
代碼上傳Github
創(chuàng)建podspec文件,并驗(yàn)證是否通過(guò)
在Github上創(chuàng)建release版本
注冊(cè)CocoaPods賬號(hào)
上傳代碼到CocoaPods
檢查上傳是否成功
1 代碼上傳Github
首先我們打開(kāi)github.com筒狠,然后創(chuàng)建自己的項(xiàng)目工程:
這里注意那個(gè)MIT License,在后面添加Cocoapods支持的時(shí)候會(huì)用到(稍后介紹)箱沦。然后點(diǎn)擊創(chuàng)建即可辩恼。
然后用SouceTree將代碼down到本地,將自己的項(xiàng)目放到里面谓形,文件夾如圖所示:
這里的LICENSE就是剛才說(shuō)的MIT License添加的文件灶伊。RSADemo是示例工程,ZGRSAEncryptor就是提供給他人使用的庫(kù)寒跳。(ZGEncrptor(For java).zip是后端的代碼)
然后提交到Github就可以了聘萨。
2創(chuàng)建podspec文件
我們使用終端到工程目錄下:
然后執(zhí)行下面的命令:
pod spec create ZGRSAEncryptor
這里的ZGRSAEncryptor就是pod添加市的名字(例如MBProgressHUD)。執(zhí)行完后的結(jié)果:
此時(shí)在工程文件夾下也會(huì)多一個(gè)ZGRSAEncryptor.podspec文件童太。這里我用Sublime Text打開(kāi)并做了如下編輯:
Pod::Spec.new do |s|
s.name? ? ? ? = "ZGInfoCollection"
s.version? ? ? = "1.0.0"
s.summary? ? ? = "A library for collection device info."
s.homepage? ? = "https://github.com/ScottZg/ZGInfoCollection"
s.license? ? ? = "MIT"
s.author? ? ? ? ? ? = { "ScottZg" => "scottzg@126.com" }
s.source? ? ? = { :git =>? ? "https://github.com/ScottZg/ZGInfoCollection.git", :tag => "#{s.version}" }
s.requires_arc = true
s.ios.deployment_target = "7.0"
s.source_files? = "ZGInfoCollection/*.{h,m}"
end
name:類(lèi)庫(kù)的名稱(chēng)這里字段介紹如下:
version:庫(kù)的版本
summary就是介紹語(yǔ),就是:
homtepage:Github上項(xiàng)目地址
license:許可證
author:作者
source:項(xiàng)目的https鏈接地址
source_files:要共享的代碼米辐,這里是ZGRSAEncryptor下面的所有代碼。
接下來(lái)執(zhí)行下面的命令進(jìn)行驗(yàn)證:
pod lib lint ZGRSAEncryptor.podspec
結(jié)果多種多樣书释,如果有錯(cuò)翘贮,則按照提示進(jìn)行改錯(cuò)即可。在這里爆惧,我執(zhí)行的結(jié)果如下圖:
發(fā)現(xiàn)了多個(gè)警告狸页,只要不是錯(cuò)誤就行,警告可以直接忽略(紅色也提示如何忽略):
pod lib lint ZGRSAEncryptor.podspec —allow-warnings
結(jié)果如下:
當(dāng)看到ZGRSAEncryptor passed validation之后扯再,就說(shuō)明驗(yàn)證通過(guò)了芍耘。
3 在Github上創(chuàng)建release版本
打開(kāi)項(xiàng)目的目錄,然后創(chuàng)建release版本的類(lèi)庫(kù):
點(diǎn)擊 箭頭指向開(kāi)始創(chuàng)建release版本熄阻,(點(diǎn)擊 Create a new release):
點(diǎn)擊Publish release即可斋竞。創(chuàng)建完成后如圖所示:
這樣第三步就完成了
4 注冊(cè)CocoaPods賬號(hào)
執(zhí)行命令行:
pod trunk register 郵箱地址 ‘用戶名’ —description='描述信息'
執(zhí)行完之后結(jié)果如下:
黃色提示已經(jīng)發(fā)送了一個(gè)驗(yàn)證碼到郵箱,你可以打開(kāi)你的郵箱驗(yàn)證即可饺律。打開(kāi)郵件中的鏈接后如下:
這樣就成功注冊(cè)了Cocoapods賬號(hào)窃页。
可以用
pod trunk me
檢查是否創(chuàng)建成功跺株。成功的結(jié)果如下:
5 上傳代碼到CocoaPods
首先檢測(cè)文件格式的有效性:
pod spec lint
結(jié)果如下:
沒(méi)有錯(cuò)誤,但是有警告脖卖∑故。可以使用 —allow-warnings忽略:
出現(xiàn)passed validation就說(shuō)明通過(guò)驗(yàn)證了。然后執(zhí)行:
pod trunk push ZGRSAEncryptor.podspec —allow-warnings
執(zhí)行結(jié)果如下:(速度應(yīng)該有的慢)
說(shuō)明了已經(jīng)上傳成功畦木。
6 檢查上傳是否成功
使用
pod search ZGRSAEncryptor
結(jié)果如下:
ok袖扛,已經(jīng)成功了。這樣就可以讓其他人進(jìn)行搜索使用了十籍。
三蛆封、總結(jié)
百度、Google了多篇文檔勾栗,然后進(jìn)行總結(jié)惨篱,終于實(shí)現(xiàn)了構(gòu)建自己的Cocoapods庫(kù)。在后面我將會(huì)繼續(xù)學(xué)習(xí)怎么在本地進(jìn)行構(gòu)建围俘、怎么在公司多人開(kāi)發(fā)的時(shí)候進(jìn)行構(gòu)建私有庫(kù)開(kāi)發(fā)砸讳。
四、參考文檔:
1界牡、http://www.cocoachina.com/ios/20160415/15939.html
2簿寂、http://www.cocoachina.com/ios/20160907/17501.html
作者:kakarotto
鏈接:http://www.reibang.com/p/950026d788bd
來(lái)源:簡(jiǎn)書(shū)
著作權(quán)歸作者所有宿亡。商業(yè)轉(zhuǎn)載請(qǐng)聯(lián)系作者獲得授權(quán)常遂,非商業(yè)轉(zhuǎn)載請(qǐng)注明出處。