iOS_讓自己的框架支持CocoaPods

首先說點(diǎn)什么呢, 開發(fā)的久了, 一直都是用 cocoapods 來管理和引用第三方庫(kù), 有時(shí)候也想把自己寫的庫(kù)放在上面, 方便別人也方便自己, 哈哈哈現(xiàn)在就來看下 如何自己的框架支持 cocoapods

1. 在 github 上創(chuàng)建新的項(xiàng)目

要注意 LICENSE 和 README.md
LICENSE 是必須的, readme.md 可選

新創(chuàng)建倉(cāng)庫(kù) 如圖所示 :


new_repository.png

2. clone 到本地

git clone https://github.com/wxm6099/SEWeChatTool

拉回來后的目錄結(jié)構(gòu) 如圖 :


content_01.png

3. 放入自己的庫(kù)和 demo

content_02.png
git add SEWeChatTool
git add SEWeChatToolDemo
git commit -m 'add SEWeChatTool and SEWeChatToolDemo'
git push

注意 : 要打 tag, cocoapods 那邊使用 tag 來區(qū)分release版本的,

git tag 0.1
git push --tags

4. 創(chuàng)建并編輯 podspec 文件

pod spec create SEWeChatTool.podspec
podspec.png
Pod::Spec.new do |s|

  s.name         = "SEWeChatTool"
  s.version      = "0.1"
  s.summary      = "A simple tool to use WeChatSDK" 
  #s.description  = <<-DESC
  #                 DESC
  s.homepage     = "https://github.com/wxm6099/SEWeChatTool"
  s.license      = "MIT"
  s.author             = { "609974309@qq.com" => "609974309@qq.com" }
  s.platform     = :ios, "7.0"
  s.source       = { :git => "https://github.com/wxm6099/SEWeChatTool.git", :tag => "0.1" }

  s.source_files  = "SEWeChatTool/*.{h,m}"
  s.dependency "WechatOpenSDK"

注意 : 這就是大概必須的字段了, 非常簡(jiǎn)潔易懂, 主要說明幾個(gè)(都是我趟過的坑)

  • 4.1 這里的 description 書寫 需要一點(diǎn)格式, 具體是下面這樣:
  s.description  = <<-DESC
              easy to use WeChat SDK tools.
                   DESC
  • 4.2 這里的 source_file 書寫, 需要依據(jù)你的目錄結(jié)構(gòu) :
    默認(rèn)是 s.source_files = "Classes/**/*.{h,m}"
    首先
    ** 是匹配所有目錄,
    * 匹配文件,
    .{h,m} 匹配后綴是 .h 或 .m 的文件

然后 Classes 須和 podspec 同級(jí)的存放你的庫(kù)文件的目錄, 這里 我存放庫(kù)文件的目錄 是 SEWeChatTool, 且里面已經(jīng)是.h & .m的文件, 即我的 s.source_files = "SEWeChatTool/*.{h,m}", 若你的目錄下還有很多子目錄比如 util, tool, 可以寫成

s.source_files  = "Classes/util/*.{h,m}"
s.source_files  = "Classes/tool/*.{h,m}"

或者是

s.source_files  = "Classes/**/*.{h,m}"

5. 驗(yàn)證 podspec 文件

pod spec lint SEWeChatTool.podspec

注 : 這里按情況 可加一些參數(shù)

--verbose 打印錯(cuò)誤信息
--allow-warnings 允許警告
--use-libraries 允許使用靜態(tài)庫(kù)

然后驗(yàn)證通過, 如圖所示 :


驗(yàn)證通過.png

6. 提交 github 平臺(tái)

驗(yàn)證通過后, 需要將本地的改動(dòng), 提交至云端.

git commit -am ‘correct a content in SEWeChatTool.podspec’
git push --all

7. 發(fā)布到 cocoapods

注 : 如果你沒注冊(cè)過trunk, 需要先注冊(cè)

pod trunk me
注冊(cè) trunk.png

如果沒有注冊(cè)信息, 那就注冊(cè)一個(gè)吧

pod trunk register 609974309@qq.com "sense" --verbose

萬事俱備, 接下來直接發(fā)布到 cocoapods

pod trunk push SEWeChatTool.podspec

因?yàn)槲疫@里有引用的 微信的 openSDK, 微信的 sdk 中有.a 文件, 即

pod trunk push SEWeChatTool.podspec --allow-warnings --use-libraries

發(fā)布成功, 如圖所示 :


發(fā)布成功.png

成功之后就能 搜索一下自己的成果啦

pod search SEWeChatTool

注意 : cocoapods 需要一些處理時(shí)間, 可以去 cocoapods 官網(wǎng)去查看自己的庫(kù)

cocoapods 官網(wǎng).png

若官網(wǎng)可以搜索到自己的庫(kù), 但pod search 或 pod install 還是報(bào)錯(cuò)找不到文件, 可以 先 pod update 更新 pod

這就是讓自己的庫(kù) 支持 cocoapods 大致過程, 想查看工程, 這里就是 SEWeChatTool

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容