乐趣区

CocoaPods-构建自己的-Pod-库

构建自己的 Pod 库

一、创建 Podspec

有两种方式:

  1. 使用命令 pod lib create mylib 创建一套完整的 Pod 库模版
  2. 使用命令 pod spec create mylib 创建 Podspec 的配置文件

二、配置 Podspec

官网说明:https://guides.cocoapods.org/syntax/podspec.html#specification

Pod::Spec.new do |spec|
  spec.name         = 'libminipng'
  spec.version      = '0.0.5'
  spec.license      = {:type => 'MIT'}
  spec.homepage     = 'http://www.ichochy.com'
  spec.authors      = {'iChochy' => 'iChochy@qq.com'}
  spec.summary      = 'Swift library that compresses PNG'
  spec.source       = {:git => 'https://github.com/iChochy/libminipng.git', :tag => 'v3.1.0'}
  spec.source_files = 'libminipng/Classes/**/*'
  spec.public_header_files = "libminipng/Classes/libminipng.h","libminipng/Classes/minipng.h"
end

spec.source:检索库的远程地址

支持指定方式:

:git => :tag, :branch, :commit, :submodules
:svn => :folder, :tag, :revision
:hg => :revision
:http => :flatten, :type, :sha256, :sha1, :headers

spec.source_files: 库的源代码

通过正则方式匹配,如:

"JSONKit.?"    #=> ["JSONKit.h", "JSONKit.m"]
"*.[a-z][a-z]" #=> ["CHANGELOG.md", "README.md"]
"*.[^m]*"      #=> ["JSONKit.h"]
"*.{h,m}"      #=> ["JSONKit.h", "JSONKit.m"]
"*"            #=> ["CHANGELOG.md", "JSONKit.h", "JSONKit.m", "README.md"]

spec.public_header_files: 公共头文件

如果 OC 混编,可以在公共头文件中引入 OC 文件,如同桥接文件

注:如果未指定公共头文件,那么 source_files 中的所有文件将被视为公共头文件

三、验证 Podspec

pod lib lint      // 本地验证
pod spec lint     // 在线验证,检查外部仓库和相关标签

如果出现警告 (WARN),可以添加--allow-warnings 忽略警告
如果出现错误(ERROR),可以添加 --verbose,查看详情

四、创建账号

  1. 注册账号:
    pod trunk register iChochy@qq.com 'iChochy' --description='macbook'
  2. 激活账号:
    完成注册后进入邮件点击激活链接进行激活操作
  3. 查看账号:
    pod trunk me

五、发布 Podspec

pod trunk push [NAME.podspec] 将您的 Podspec 部署到 Trunk,并公开发布
pod repo push REPO [NAME.podspec] 将您的 Podspec 部署到私有仓库

注:如果出现警告 (WARN),可以添加--allow-warnings 忽略警告


联系方系:

邮箱:iChochy@qq.com
网站:http://www.ichochy.com
GitHub:https://github.com/iChochy

退出移动版