② cocoapods原理及 PodSpec 文件上傳操作

cocoapods原理

Gem是一個管理Ruby庫和程序的標準包,它通過Ruby Gem(如 http://rubygems.org/ )源來查找、安裝、升級和卸載軟件包,非常的便捷。

可以通過 pod --versionn查看pod版本號
可以通過ruby -v查看ruby版本號
可以通過gem -v查看gem版本號

pod基本操作

  1. 查看第三方框架倉庫源 pod repo
  2. 移除倉庫源pod repo remove master
  3. 添加倉庫源pod repo add master http://git.oschina.net/akuandev/Specs.git
  4. 初始化(下載服務器中所有第三方框架信息, 緩存到電腦本地) pod setup
  5. pod search 框架關鍵字—從本地緩存的"第三方框架描述信息" 生成的檢索文件中檢索到 相關框架的信息
  6. 刪除cocoapods索引文件 rm ~/Library/Caches/CocoaPods/search_index.json
  7. 創建 Podfile 文件, 到自己工程內(一級目錄)
    • Podfile 文件作用?
      答: 其實就是使用ruby語法編寫的 “框架依賴描述文件”; 就是告訴cocoapods需要下載集成哪些框架
    • 創建命令 pod init
  8. 安裝框架 pod install
    在這裏插入圖片描述

在這裏插入圖片描述

cocoapods原理圖:
在這裏插入圖片描述

sepcs
遠程索引庫

`pod setup``
其實就是下載遠程索引庫到本地索引庫

如果我們pod install之後,那麼下載三方到項目。
當我們另一個項目再次用到這些源碼,然後install之後,會很快,因爲本地已經備份了一份了

當我們第一次pod search會很慢,因爲它再下載下來,然後放到緩存當中,所以下次再執行該操作的話會快好多。下圖是緩存路徑
在這裏插入圖片描述

在這裏插入圖片描述

創建遠程庫,並製作PodSpec通過trunk推送podspec文件

  • 第一步,上傳項目到github, 並且打好標籤

    • 具體操作可以看我的第一篇組件化文章git基本使用
    • git push origin master
    • git tag '1.0.0'
    • git push --tags
  • 第二步,註冊trunk

    • pod trunk register 157******[email protected] 'wanggang' --verbose
      –verbose參數是爲了便於輸出註冊過程中的調試信息
    • 註冊完以後郵箱會收到郵件,要進去進行校驗。
  • 第三步,配置並上傳框架的 PodSpec 文件

    • 原理

      • PodSpec 文件 描述自己的框架信息:作者,版本, 下載地址等等
      • pod search 搜索框架, 就是根據這裏面的信息進行檢索的
      • 注意: 一般這個文件的名稱和工程名稱保持一致
      • 創建命令:pod spec create 文件名稱
      • 具體我個人操作:
        $ cd /Users/liuxitong/Desktop/testLib
        $ pod spec create testLib
        這樣就創建好了,如圖所示:
        在這裏插入圖片描述
    • PodSpec文件格式

      • 可以下載被cocoapods管理的框架裏面的描述信息, 也可以到官網查看官網鏈接
      • pod spec lint podspec文件
      • 如果校驗失敗,那麼就發現哪裏有問題就修改podspec對應的地方。
      • 某些podspec中的字段解釋:
        spec.source_files:到地址取得哪些標籤文件 通配符表示的是目錄,即classes文件夾裏的目錄
        spec.source_files = “Classes”, "Classes/
        /*.{h,m}"
    • 通過trunk推送podspec文件

      • pod trunk push
      • 我這裏具體操作 pod trunk push testLib.podspec
        這樣我們就將PodSpec上傳成功了,然後我們在cocoapod裏面也可以加入我們這個新的第三方庫了。
      • 這種方式其實就是上傳這個描述文件到cocoapods在github上的倉庫中,倉庫地址
      • 然後還需要等待審覈,跟pull request一樣, 需要作者同意
  • 第四步, 更新本地pod 第三方框架信息數據源
    pod setup

  • 第五步,使用pod search 命令搜索自己的框架, 如果可以搜索到, 那麼代表審覈通過了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章