為了更方便的集成第三方框架有了cocopods 的, 當我們有了相對比較好的框架的時候如何更新到cocopods 供他人參考呢?
下面我一步一步帶大家開源自己的框架。
第一步
把自己的框架更新到github 上,為了提交地址給他人下載。
這里就不詳細介紹如何把項目更新到github上了
第二步
這個時候我們的項目已經(jīng)掛在github上了
我們需要給本地的項目新建一個Podspec描述文件
// 進入到項目目錄下
cd xxx/xxx/xxx
// 創(chuàng)建Podspec文件
pod spec create “你的Podspec名字”
此時你已經(jīng)在項目目錄下創(chuàng)建了一個Podspec文件了
這個時候我們需要對他進行編輯
注意:最好用xcode 去編輯 防止錯誤 只能輸入英文標點
Pod::Spec.new do |s|
s.name = “項目名字”
s.version ="版本號"
s.summary = "項目介紹"
s.homepage = "你的主頁地址"
s.license = "MIT" //這里就選這個許可證
s.author ={"你的名字" => "郵箱"}
s.platform =iOS,"最低支持的系統(tǒng)"
s.source ={git =>"項目git地址",tag =>"tag號"}
s.source_files = "text/*/.(h.m)" //這里是項目路徑要傳的文件
s.framework ="UIKit" //依賴的系統(tǒng)庫 可以依賴多個
// 若需要依賴其他開源的第三方庫 可以寫成下列形式 若需要有多個就復(fù)制下面代碼 添加第三方庫
// s.dependency "AFNetWorking"
// 如果需要配置依賴系統(tǒng)庫
// s.framework = 'SomeFramework'// 設(shè)置依賴的系統(tǒng)庫名稱
// s.frameworks = 'SomeFramework', 'AnotherFramework'//設(shè)置多個系統(tǒng)庫名稱
// 需要依賴系統(tǒng)的library
s.library = 'iconv'// 設(shè)置只依賴一個系統(tǒng)的library
s.libraries = 'iconv', 'xml2' // 設(shè)置依賴多個系統(tǒng)的library
// 這里是工程配置,這樣使用者就不需要手動處理,由pod自動處理了
s.xcconfig = {'HEADER_SEARCH_PATHS' =>'$(SDKROOT)/usr/include/libxml2'}
然后我們設(shè)置下tag號 然后推送到git
$ git commit -m "說明"
$ git tag 0.0.1 // tag 和上面你設(shè)定的一樣 一般tag號和版本號一致
$ git push --tags
$ git push origin master
我們來驗證下他是否符合要求。
pod lib lint "podspec名字".podspec --allow-warnings
若我們看
“你的podspec名字” passed validation
說明這個配置文件是沒問題的。
若失敗了。
我們就需要將遠程tag刪除 重新來過
git push origin :refs/tags/"上一次設(shè)置的tag號"
在驗證通過之后我們需要將代碼提交到cocopods
pod trunk push "你的podspec名字".podspec --allow-warnings
如果沒有出錯 我們就算大功告成了。
通過pod search "項目名"去搜索你的第三方庫吧。。