<article class="_2rhmJa">
1. 在Github新建倉(cāng)庫(kù)
創(chuàng)建公共的倉(cāng)庫(kù),并且添加License,CocoaPods需要這個(gè)License。

2. 在倉(cāng)庫(kù)添加文件
將倉(cāng)庫(kù)clone到本地之后,使用以下命令創(chuàng)建.podspec文件
pod spec create yourFramework
.podspec文件去掉注釋之后的內(nèi)容如下
-
s.source指定了倉(cāng)庫(kù)地址,其他人通過(guò)CocoaPods使用我們的framework,就是從該倉(cāng)庫(kù)進(jìn)行下載 -
s.vendored_frameworks指定了我們要提供給用戶的Framework。它和s.source組成了Framework的絕對(duì)路徑
Pod::Spec.new do |s|
s.name = "CXLFirstFramework"
s.version = "1.0.0"
s.summary = "my test to upload framework to CocoaPods"
s.description = <<-DESC
this is my first framework, now I am learning to upload it to cocoapod
DESC
s.homepage = "https://github.com/xiaoLong1010/CocoaPodDemo"
s.license = "MIT"
# s.license = { :type => "MIT", :file => "FILE_LICENSE" }
s.author = "xiaolong1010"
# s.platform = :iOS
s.platform = :ios, "8.0"
s.source = { :git => "https://github.com/xiaoLong1010/CocoaPodDemo.git", :tag => "#{s.version}" }
# the framework upload to Cocoa Pods
s.vendored_frameworks = 'Zhangfghur45.framework'
s.frameworks = 'Foundation'
將Framework也添加到倉(cāng)庫(kù),倉(cāng)庫(kù)就包含以下內(nèi)容:

將.podspec和Framework推送到Github。
git add .
git commit -m “commit message”
git push -u origin master
為本次提交生成tag,該tag值對(duì)應(yīng).podspec中的s.source。
git tag '1.0.0'
git push origin --tags
3. 驗(yàn)證.podspec文件
使用以下命令驗(yàn)證.podspec
pod spec lint your.podspec
如果成功的話,會(huì)出現(xiàn)以下提示
CXLFirstFramework.podspec passed validation.
可能碰到的問(wèn)題

Abort trap: 6問(wèn)題,我是通過(guò)升級(jí)CocoaPods的版本修復(fù)的。首先更新gem的源。https://ruby.taobao.org/,https://gems.ruby-china.org/這兩個(gè)源都不能用了,要使用https://gems.ruby-china.com。
gem sources --add https://gems.ruby-china.com/ --remove https://rubygems.org/
安裝最新版的CocoaPods
sudo gem install cocoapods
4.注冊(cè)CocoaPods的Trunk服務(wù)
CocoaPods提供Trunk服務(wù),用于開發(fā)者管理Pods。首先注冊(cè)郵箱和用戶名。
pod trunk register yourEmail 'your name' --verbose
郵箱會(huì)收到一個(gè)驗(yàn)證鏈接,點(diǎn)擊鏈接進(jìn)行驗(yàn)證。使用下面的命令查看是否注冊(cè)成功。
pod trunk me

將.podspec文件提交到CocoaPods
pod trunk push your.podspec
出現(xiàn)如下結(jié)果,就表明提交成功。

有如下命令,管理Pod
# 查看注冊(cè)信息
pod trunk me
# 添加其他維護(hù)者
pod trunk add-owner XXXSDK 123456@qq.com
# 刪除已發(fā)的版本
pod trunk delete XXXSDK 版本號(hào)
# 刪除某個(gè)pod
pod trunk deprecate XXXSDK
# 刪除其他維護(hù)者
pod trunk remove-owner XXXSDK 56789@qq.com
5 搜索Pod
更新本地Spec庫(kù)
pod repo update
查找Pod
pod search yourPod
如果出現(xiàn)以下錯(cuò)誤,可以先刪除search_index.json,再進(jìn)行搜索.
Unable to find a pod with name, author, summary, or description matching
rm ~/Library/Caches/CocoaPods/search_index.json
參考文章
https://blog.csdn.net/jeikerxiao/article/details/52881773
https://blog.csdn.net/u010828718/article/details/81870432
http://www.itdecent.cn/p/30246a000bc6
CocoaPods升級(jí)
https://blog.csdn.net/jeikerxiao/article/details/78949459
https://juejin.im/post/5ad0c92a518825364001db63
https://gems.ruby-china.com
</article>
0人點(diǎn)贊
作者:川少葉
鏈接:http://www.itdecent.cn/p/954646c47068
來(lái)源:簡(jiǎn)書
著作權(quán)歸作者所有。商業(yè)轉(zhuǎn)載請(qǐng)聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請(qǐng)注明出處。