首先说点什么呢, 开发的久了, 一直都是用 cocoapods 来管理和引用第三方库, 有时候也想把自己写的库放在上面, 方便别人也方便自己, 哈哈哈现在就来看下 如何自己的框架支持 cocoapods
1. 在 github 上创建新的项目
要注意 LICENSE 和 README.md
LICENSE 是必须的, readme.md 可选
新创建仓库 如图所示 :
2. clone 到本地
git clone https://github.com/wxm6099/SEWeChatTool
拉回来后的目录结构 如图 :
3. 放入自己的库和 demo
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
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 允许使用静态库
然后验证通过, 如图所示 :
6. 提交 github 平台
验证通过后, 需要将本地的改动, 提交至云端.
git commit -am ‘correct a content in SEWeChatTool.podspec’
git push --all
7. 发布到 cocoapods
注 : 如果你没注册过trunk, 需要先注册
pod trunk me
如果没有注册信息, 那就注册一个吧
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 大致过程, 想查看工程, 这里就是 SEWeChatTool