iOS_让自己的框架支持CocoaPods

Posted SenseTo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS_让自己的框架支持CocoaPods相关的知识,希望对你有一定的参考价值。

首先说点什么呢,开发的久了,一直都是用 CocoaPods 来管理和引用第三方库,有时候也想把自己写的库放在上面,方便别人也方便自己,哈哈哈现在就来看下 如何自己的框架支持 CocoaPods

1. 在 github 上创建新的项目

要注意 LICENSE 和 README.md
LICENSE 是必须的, readme.md 可选

新创建仓库 如图所示 :




2. clone 到本地

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

拉回来后的目录结构 如图 :

iOS_让自己的框架支持CocoaPods


3. 放入自己的库和 demo

iOS_让自己的框架支持CocoaPods


git add SEWeChatTool
git add SEWeChatToolDemo
git commit -m 'add SEWeChatTool and SEWeChatToolDemo'
git push

注意 : 要打 tag, CocoaPods 那边使用 tag 来区分 release 版本的

git tag 0.1
git push --tags

4. 创建并编辑 podspec 文件

pod spec create SEWeChatTool.podspec

iOS_让自己的框架支持CocoaPods


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"

注意 : 这就是大概必须的字段了, 非常简洁易懂, 主要说明几个(都是我趟过的坑啊)

  • 4.1 这里的 description 书写 需要一点格式, 具体是下面这样 :

  s.description  = <<-DESC
              easy to use WeChat SDK tools.
                    DESC
  • 4.2 这里的 source_file 书写, 需要依据你的目录结构:
    默认是 s.source_files = "Classes/**/*.{h,m}"
    首先
    ** 是匹配所有目录,
    * 匹配文件,
    .{h,m} 匹配后缀是 .h 或 .m 的文件

然后 Classes 须和 podspec 同级的存放你的库文件的目录,这里 我存放库文件的目录 是 SEWeChatTool, 且里面已经是 .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. 验证 podspec 文件

pod spec lint SEWeChatTool.podspec

注 : 这里按情况 可加一些参数

--verbose 打印错误信息
--allow-warnings 允许警告
--use-libraries 允许使用静态库

然后验证通过, 如图所示 :

iOS_让自己的框架支持CocoaPods


6. 提交 github 平台

验证通过后, 需要将本地的改动, 提交至云端.

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

7. 发布到 CocoaPods

注 : 如果你没注册过 trunk ,需要先注册

pod trunk me

iOS_让自己的框架支持CocoaPods


如果没有注册信息, 那就注册一个吧

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

万事俱备, 接下来直接发布到 CocoaPods

pod trunk push SEWeChatTool.podspec

因为我这里有引用的 微信的 openSDK, 微信的 sdk 中有.a 文件, 即

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

发布成功, 如图所示 :




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

pod search SEWeChatTool

注意 : CocoaPods 需要一些处理时间, 可以去 CocoaPods 官网去查看自己的库




若官网可以搜索到自己的库, 但pod search 或 pod install 还是报错找不到文件, 可以 先 pod update 更新 pod 本地仓库

这就是让自己的库 支持 CocoaPods 大致过程.

https://github.com/wxm6099/SEWeChatTool 




以上是关于iOS_让自己的框架支持CocoaPods的主要内容,如果未能解决你的问题,请参考以下文章

Swift开源框架发布到CocoaPods

从零开始,让你的框架支持CocoaPods

如何快速让你的代码支持Cocoapods!

把自己github上的代码添加cocoapods支持

iOS开发-- 创建podspec文件,为自己的项目添加pod支持

Xamarin.iOS CocoaPods基本使用