1. 程式人生 > >iOS CocoaPods公有庫

iOS CocoaPods公有庫

級別: ★★☆☆☆
標籤:「iOS」「CocoaPods」「公有庫」
作者: MrLiuQ
審校: QiShare團隊

上一篇介紹了:CocoaPods簡介及基本使用,本篇將介紹一下CocoaPods公有庫的建立和使用。

一、什麼是公有庫?

在我們開發中,經常會用到一些第三方庫(比如AFNetworkingSDWebImage等等),我們通過pod install命令,把第三方庫匯入自己的專案中(具體操作見:上一篇)。而這些第三方庫就是公有庫。

二、為什麼用公有庫?

如果我們也想把自己創作的 元件 / 框架 開源出去,給更多的開發者使用,那我們就要把自己的pods

釋出到CocoaPods裡。這樣,當別人在用pod search xxx時,就會search到你開源的 元件 / 框架 了。

而一個開源元件/框架,一般需要包含以下幾個檔案:

  • 元件/框架 原始碼
  • LICENSE:開源許可證(一般選擇MIT);
  • README.md:倉庫說明(Markdown格式);
  • cocoaPodsName.podspec:CocoaPods的描述檔案(很重要)。

三、公有庫的建立及使用

1. 首先,在GitHub上建立好倉庫。

注意點:
1> 倉庫名(Repository name)不可重名。
2> 開源許可證(LICENSE

)一般預設選擇MIT

2. 通過終端、sourceTreeGitHub Desktop等工具,將專案clone到本地。
3. cd進入專案工程目錄,建立podsName.podspec檔案。

使用命令:pod spec create xxx

4. 編輯podsName.podspec檔案。

使用命令:vi xxx.podspec

備註:

屬性 含義
s.name 公有庫 - 名稱
s.version 公有庫 - 版本號
s.summary 公有庫 - 簡介
s.description 公有庫 - 詳細介紹
s.homepage 公有庫 - 主頁(一般是GitHub地址)
s.author 公有庫 - 作者
s.license 公有庫 - 開源協議
s.source 公有庫 - GitHub地址及版本號
s.source_files 公有庫 - 對外共享的.h和.m檔案
s.requires_arc 公有庫 - 是否支援ARC

更多欄位解釋:可看官方文件

5. 編輯完成後,驗證podsName.podspec檔案。

使用命令:pod lib lint [xxx.podspec] [--allow-warnings] [--verbose]

PS:

  • --allow-warnings:忽略工程中的警告⚠️。
  • --verbose:檢視控制檯詳細資訊。

成功後如圖:

完成後,把檔案push到GitHub上。

6. 建立Release版本資訊:
  • 方式一:使用命令列 使用命令git tag x.x.x, 檢視tags,使用命令git tag -l 使用命令,git push --tags推到 github上。

  • 方式二:使用官網
7. 註冊Trunk

先看看有沒有註冊,使用命令:pod trunk me。若已註冊,則本步直接跳過。

若未註冊,則:

  • 開啟終端,使用命令:pod trunk register EMAIL [YOUR_NAME]。 如圖:

  • 這時你的郵箱會收到一封郵件: 點選後出現:

這時,回終端使用命令pod trunk me 會出現:

8. 再次校驗(可忽略,下一步會自動校驗)

使用命令:pod spec lint ["your podspec name"] [--allow-warnings]

9. 釋出公有庫

使用命令:pod trunk push ["xxx.podspec"] [--allow-warnings]

10. 完成,可用pod search podsName搜尋使用。

使用命令:pod search QiCocoaPods,如果沒搜到,更新一下本地的索引庫即可。(刪掉~/資源庫/Caches/CocoaPods/search_index.json,再重新使用search命令)

結果如圖:

image


作者微信:可加並拉入《QiShare技術交流群》。

關注我們的途徑有:
QiShare(簡書)
QiShare(掘金)
QiShare(知乎)
QiShare(GitHub)
QiShare(CocoaChina)
QiShare(StackOverflow)
QiShare(微信公眾號)

推薦文章:
iOS 簽名機制
iOS 掃描二維碼/條形碼
iOS 瞭解Xcode Bitcode
iOS 重繪之drawRect
奇舞週刊