一哼凯、前提準(zhǔn)備
1. 在github上創(chuàng)建一個(gè)新倉庫,并add a License
2. 用SourceTree將github上的工程克隆到本地廊谓,下圖為為本地倉庫內(nèi)容
3. 添加.gitignore文件
.gitignore文件可以防止本地倉庫中沒有用的文件推到github上(在這里不做詳細(xì)說明)
4. xcode新建工程
xcode-file-new-project新建工程,并將工程路徑設(shè)置為本地倉庫路徑许帐。創(chuàng)建成功之后苦银,將工程推到github上。此工程作為demo以給用戶演示使用
5. 創(chuàng)建并編輯podspec文件
創(chuàng)建命令 pod spec create XLLShowTestSDK
編輯命令 vim XLLShowTestSDK
這里簡單介紹一下podspec文件的一些基本設(shè)置:
s.name = "XLLShowTestSDK" // pod 名稱
s.version = "1.0.0" // 版本號(hào)
s.summary = "A short description of XLLShowTestSDK."
s.description = <<-DESC
XLLShowTestSDK.
DESC
s.homepage = "https://github.com/b593771943/XLLShowTest" // github主頁地址
s.license = "MIT" // 添加的license
s.author = { "iOS-肖樂樂" => "m15822049431@163.com" }
s.platform = :ios, "8.0" // 支持的系統(tǒng)版本
s.source = { :git => "https://github.com/b593771943/XLLShowTest.git", :tag => "#{s.version}" } // 項(xiàng)目地址
s.subspec 'Core' do |ss|
ss.source_files = 'XLLShowTest/*.{h}' // 源文件路徑
ss.vendored_libraries = 'XLLShowTest/*.{a}' // 靜態(tài)庫路徑
end
s.requires_arc = true
end
6. 驗(yàn)證本地podspec文件格式
pod lib lint XLLShowTest.podspec
如果發(fā)現(xiàn)因警告而導(dǎo)致驗(yàn)證失敗铛绰,忽略即可
pod lib lint XLLShowTest.podspec --allow-warnings
這里可以會(huì)報(bào)一個(gè)莫名其妙的錯(cuò)誤
unknown: Encountered an unknown error (/usr/bin/xcrun simctl list -j devices
原因是xcode模擬器找不著報(bào)錯(cuò)诈茧,解決辦法:
獲取Xcode路徑。獲取Xcode路徑只需到應(yīng)用程序中找到Xcode捂掰,然后將其拖入到終端即可獲取到Xcode的路徑敢会。
解決方法:在終端中繼續(xù)輸入 sudo xcode-select -switch Xcode
路徑/Contents/Developer 即可。
比如我的Xcode路徑為:/Applications/Xcode.app这嚣。那么我在終端中則會(huì)輸入為sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer
參考:https://blog.csdn.net/hierarch_lee/article/details/50583730
當(dāng)出現(xiàn)XLLShowTest passed validation,恭喜你驗(yàn)證通過
這里需要提一點(diǎn)的是鸥昏,如果cocoapods里有自己的.a靜態(tài)庫,一定要以lib開頭命名=阒恪@艨濉!因?yàn)檫@個(gè)原因我spec文件驗(yàn)證一直失敗罐旗,卡了半天I磐簟!>判恪遗嗽!一定要記住這點(diǎn)!9难选痹换!制作.a靜態(tài)庫的方法征字,請查看:制作.a靜態(tài)庫
7. 在github上創(chuàng)建release版本
確保本地所有操作都推送到github上之后,在github上新建一個(gè)與podspec里設(shè)置的版本號(hào)相同的release版本娇豫,點(diǎn)擊publish release匙姜。
8. 注冊cocoapods號(hào)
pod trunk register 郵箱地址 ‘用戶名’ // 執(zhí)行之后,去郵箱里進(jìn)行驗(yàn)證
pod trunk me // 檢查是否注冊成功
8. 驗(yàn)證release版本里的podspec文件格式
pod spec lint
同樣如果由于警告導(dǎo)致驗(yàn)證失敗冯痢,忽略警告
pod spec lint --allow-warnings
驗(yàn)證通過后氮昧,執(zhí)行
pod trunk push XLLShowTest.podspec --allow-warnings
執(zhí)行結(jié)果:
項(xiàng)目地址:XLLFileHash
pod XLLFileHash可進(jìn)行使用