美文网首页程序员iOS点点滴滴
iOS_让自己的框架支持CocoaPods

iOS_让自己的框架支持CocoaPods

作者: Sense王旭明 | 来源:发表于2018-01-24 14:21 被阅读191次

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

1. 在 github 上创建新的项目

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

新创建仓库 如图所示 :


new_repository.png

2. clone 到本地

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

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


content_01.png

3. 放入自己的库和 demo

content_02.png
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
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"

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

  • 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 允许使用静态库

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


验证通过.png

6. 提交 github 平台

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

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

7. 发布到 cocoapods

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

pod trunk me
注册 trunk.png

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

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

发布成功, 如图所示 :


发布成功.png

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

pod search SEWeChatTool

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

cocoapods 官网.png

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

这就是让自己的库 支持 cocoapods 大致过程, 想查看工程, 这里就是 SEWeChatTool

相关文章

网友评论

    本文标题:iOS_让自己的框架支持CocoaPods

    本文链接:https://www.haomeiwen.com/subject/lfzlaxtx.html