cocoapods的制作

  • 前言:2014年5月20日,CocoaPods不再接受向CocoaPods/Specs的pull request,官方的说法是为了安全考虑,防止每个人的pod被其他人修改,于是CocoaPods团队开发了trunk服务。
  • Trunk官方的介绍链接:http://blog.cocoapods.org/CocoaPods-Trunk/#transition

1.trunk注册

1.1,可以先使用pod trunk me命令,查看自己的注册信息。

cocoapods的制作_第1张图片
1.png

1.2,若没有注册,使用下面命令进行注册。

 pod trunk register  [email protected] 'nishenlei' --description='17款 13寸 macbook pro' --verbose

1.3,注册后CocoaPods会给你的邮箱发送验证链接,点击后就注册成功了,可以用pod trunk me命令查看自己的注册信息:


cocoapods的制作_第2张图片
2.png

上面是我的注册信息,CocoaPods不通过密码来验证用户,而是通过一个session token。

2.pod部署(以SLGenericsNineView为例)

1.新建工程
在GitHub上新建项目工程,并打上对应的tag(如:1.0)
与下面的.podspec文件中的s.version一致。

2.新建SLGenericsNineView.podspec文件

podspec官方说明:http://docs.cocoapods.org/specification.html

#
#  Be sure to run `pod spec lint SLGenericsNineView.podspec' to ensure this is a
#  valid spec and to remove all comments including this before submitting the spec.
#
#  To learn more about Podspec attributes see http://docs.cocoapods.org/specification.html
#  To see working Podspecs in the CocoaPods repo see https://github.com/CocoaPods/Specs/
#

Pod::Spec.new do |s|

  s.name         = "SLGenericsNineView"
  s.version      = "1.0"
  s.summary      = "泛型九宫格布局"
  s.description  = <<-DESC 
                    通过泛型的思想,对九宫格布局的代码进行封装,更简单的九宫格布局控件。
                    DESC
  # 首页(我的)
  s.homepage     = "https://github.com/slni/SLGenericsNineView.git"
  # 源代码位置
  s.source = { :git => "https://github.com/slni/SLGenericsNineView.git", :tag => "#{s.version}" }
  s.source_files = "SLGenericsNineView/SLGenericsNineView/Source/*.{swift,h,m}"
  #s.source_files = "SLGenericsNineView/**/*.{swift,h,m}"

  s.swift_version = "4.0"
  # 许可,一般MIT
  s.license = "MIT"
  s.author  = { "slni" => "[email protected]" }
  s.platform = :ios, "8.0"
  #s.ios.deployment_target = '8.0'
  #s.osx.deployment_target = '10.10'
  #s.tvos.deployment_target = '9.0'
  #s.watchos.deployment_target = '2.0'
  # 依赖三方的框架
  # s.dependency 'AFNetworking', '~> 1.0'
  # s.dependency 'Alamofire'
  # s.dependency 'Moya'
  # s.dependency 'SwiftyJSON'
  # s.dependency 'PromiseKit'
  # s.dependency 'SnapKit'
  # 依赖系统的框架
  # s.ios.framework = 'CFNetwork'
  
end

3.验证SLGenericsNineView.podspec文件
使用pod lib lint验证创建的SLGenericsNineView.podspec文件是否合格规范。

cocoapods的制作_第3张图片
3.png

4.上传SLGenericsNineView.podspec文件
使用pod trunk push SLGenericsNineView.podspec命令上传到trunk。

cocoapods的制作_第4张图片
4.png

3.使用pod集成

这个时候,pod制作已经成功了!!!!
3.1可通过pod search SLGenericsNineView搜索刚才制作成功的SLGenericsNineView。

cocoapods的制作_第5张图片
5.png

如果,制作成功了,发现search不到,可先执行下pod setup,再进行搜索。

你可能感兴趣的:(cocoapods的制作)