iOS-元件化

可愛親寶寶發表於2021-05-28

1. 本地倉庫製作

元件:基礎元件,功能元件,業務元件,都可以製作成pod引用。

1.1. 建立檔案

終端輸入:pod lib create name,name是自己的元件名稱。

1.2. 新增元件和需要引用的庫

找到DeveLopment Pods資料夾,把自己元件製作的檔案放在該檔案下。這時候我們可以使用Example來測試元件是否能使用。如果該元件是不依賴第三方的,則不需要新增。

這裡的RegexKitLite僅是在該Example測試。

這裡的pod YaoChuFaKit 的path的位置就是元件的路徑。

1.3. 元件放在專案使用

找到自己專案的Podfile檔案,path的路徑是相對路徑,看自己放在哪裡。如果元件依賴第三方庫,就再pod依賴的庫就行,不依賴就不用。執行即可。

 pod 'YaoChuFaKit', :path => '../LGLib/YaoChuFaKit'
  pod 'RegexKitLite'
複製程式碼

2. 遠端倉庫製作

2.1. 修改.podspec檔案

  • s.version:填寫的是tag對應的版本號
  • s.summary:是簡短說明
  • s.description:描述說明
  • s.homepage:首頁路徑
  • s.source:填寫的是git路徑,這個是遠端倉庫用到的路徑
  • s.source_files:資原始檔目錄
  • s.dependency:依賴的第三方庫

2.2. 遠端倉庫建立

建立遠端私有倉庫,例如碼雲,直接建立倉庫就行。複製路徑。

本地終端操作:

  • 終端:git add .
  • 終端:git commit -m '描述資訊'
  • 終端:git remote add origin [gitee.com.\],新增遠端分支
  • 終端:git push origin master,推送程式碼到遠端倉庫
  • 終端:git tag 0.1.0,新增本地標籤,這個標籤要和s.version一樣。
  • 終端:git push --tags,推送所有本地標籤到遠端倉庫。

2.3. 新增遠端私有specs

我們自己曾經的要用到的私有元件,都可以統一放到自己的specs。

這個specs也是一個遠端倉庫。和2.2一樣建立就行,名字可以自己隨便命名,例如XXSpecs。

終端:pod repo add XXSpecs gitee.com/xxx/XXSpecs… repo add [倉庫名稱][倉庫路徑],把XXSpecs加入都本地的repo上。

這時候我們會發現本地就有XXSpecs檔案了。

終端:pod lib lint --allow-warnings --use-libraries。校驗.specs檔案是否可以,這裡我們去除警告,如果有問題會顯示報錯。這時候就要看錯誤說明了。

出現這種錯誤,主要還是看錯誤說明,正常是沒有問題的,就看提交版本,和tag版本是否一致。

終端:pod repo push XXSpecs 本地的repo名.podspec --verbose --allow-warnings。還是要去除警告,不去除警告有可能會報上面的錯誤。

執行後,就可以到遠端的XXSpecs上,看看元件是否用在該倉庫上。然後我們就可以直接在自己專案上pod 元件庫了。

相關文章