發布開源項目到cocoapods上

? ? ? ? 公司多個app開發中,其中的一些模塊化的代碼相同,粘貼復制麻煩,有修改或者細節優化,就需要多個app同時修改,工作繁瑣沒有效率,不利于代碼的反復使用。

? ? ? ? 就想到平時用的三方框架,將自己封裝好的功能模塊放在GitHub上,使用cocoapod集成這個模塊代碼,當代碼優化修改時就使用pod將代碼的版本更新即可;既方便集成使用,也方便記錄代碼的多個迭代版本;

1. 創建demo工程,在demo中確保代碼塊的正常調用,弱化耦合性;

2. 將demo上傳至github,再clone到本地:

在github上新建項目時需要注意一下幾點:1.項目選擇公開Public;2.最好添加README文件;3.最好添加gitignore文件;4.必須添加license文件,我選擇的是MIT license (基本上開源的項目的license的類型都是MIT);

3. 創建項目的podspec文件

用終端命令cd到本地項目目錄并執行如下命令:

$pod spec create 項目名稱 ??

這時候本地生成一個 項目名稱.podspec 文件

使用vi打開.podspec文件(不要直接使用文本編輯器打開文件修改,這樣會曹成格式錯誤),填寫里面的內容,下面是我項目的.podspec文件:

Pod::Spec.new do |s|

s.name? ? ? ? = "CustomLoadingTool"

s.version? ? ? = "1.0.0"

s.summary? ? ? = "A Library for iOS to use for loading view."

s.homepage? ? = "https://github.com/wangguimin/CustomLoadingTool"

s.license? ? ? = "MIT"

s.author? ? ? ? ? ? = { "wangguimin" => "870503894@qq.com" }

s.source? ? ? = { :git => "https://github.com/wangguimin/CustomLoadingTool.git", :tag => "#{s.version}" }

s.source_files? = "CustomLoadingToolDemo/CustomLoadingToolDemo/CustomLoadingTool/*.{h,m}"

s.frameworks? = "Foundation"

s.platform? ? = :ios, "8.0"

end

//需要注意的是s.source_files路徑一定要寫對

//公共資源文件也就是pod 下來的文件? *.{h,m}是通配符意思是所有在該目錄下以.h .m結尾的文件? 該目錄地址是相對于CustomLoadingTool文件的

4. 驗證podspec文件?

編輯完podspec文件后需要驗證一下這個文件是否可用,podspec文件不允許有任何的Warning或者Error

執行命令? $ pod lib lint 項目名稱.podspec如果出現

->CustomLoadingTool (1.0.0)

CustomLoadingTool? passed validation

則說明 驗證通過,否則,根據提示修改podspec文件再次驗證,直到驗證通過附帶說一下,Xcode允許警告存在,所以可以通過命令屏蔽警告 $ pod lib lint? 項目名稱.podspec - allow-warnings

如果出現Error但是提示信息不足,可以添加—verbose 以獲取更多的錯誤信息

$ pod lib lint 項目名稱.podspec —verbose?

5. 打印tag,上傳podspec

podspec 文件中需要指定的tag,完成上述操作后給項目打上tag

$ git tag -m "first release ios_Category with podspec" "1.0.0"

$git push --tags

最后使用pod trunk 命令,把podspec文件推送到cocoapod官網庫

6. 注冊pod trunk

在終端輸入以下命令?? 參數 郵箱地址, 用戶名, 郵箱地址用github 上的最好

$ pod trunk register 870503894@qq.com?'wangguimin' ?—verbose

向服務器查詢自己注冊的信息 $ pod trunk me

7. 通過trunk推送podspec文件

$ pod trunk push CustomLoadingTool.podspec? 這個工程可能會比較耗時

出現如下圖的結果即可

8.搜索自己的項目吧

pod search 項目名

注意:

如果搜素出現錯誤時:

Unable to find a pod with name, author, summary, or description matching `CustomLoadingTool`

在終端中輸入 :rm ~/Library/Caches/CocoaPods/search_index.json

刪除本地pod的文件,然后在進行搜索

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容