iOS上传自己的开源框架到Cocoapods

2017-12-04  本文已影响15人  Fxxxxxxx

前言

Cocoapods可以说是我们iOS开发用到的最多的一个工具了,很多开源的框架、第三方,都可以通过一句pod install加载到我们的工程中,超级方便,尤其是在Swift和OC的混合开发中,完全可以不用去管这些框架的语言,都是以静态库的形式倒入,最多建个桥联文件就可以使用,可以说是so easy~而且可以方便管理这些第三方的版本,依赖,节省很多开发时间。说了这么多Cocoapods的好处,我们也试着来把自己写的开源库上传到Cocoapods,方便大家使用。

上传Git

这里我用一个我写的叫做FXDropDownMenu的工程为例,首先我们要把这个工程上传到Git,这里我使用的是Github,当然其他的Git也是可以的,例如国内的开源中国的码云(我经常使用),工具是Sourcetree:

Sourcetree
编辑好一个完整的版本,上传之后,记得上传一个Tag给上传的版本,这里我们设置tag为1.0
image.png
image.png
标签推送成功之后,可以在我们的分支顶上的版本里看到标签
image.png

创建Podspec描述文件

在我们本地Git下的工程里,进入工程根目录,使用pod spec create FXDropDownMenu命令,这里的名称写自己的框架的名称

image.png
命令窗绿字提示成功,就可以在我们刚才的目录里看到一个后缀名为.podspec的文件,用文本编辑器打开编辑,我使用Xcode打开的,万能的Xcode,这个文件里的备注写的很清晰,告诉我们怎么填写,这里我列一些重要的出来:
  s.name         = "FXDropDownMenu"
  s.version      = "1.0"
  s.summary      = "简单好用的下拉点击菜单"
  s.description  = <<-DESC
                "简单好用的下拉点击菜单"
                   DESC
  s.homepage     = "https://github.com/Fxxxxxx/FXDropDownMenu"
  s.screenshots  = "https://img.haomeiwen.com/i3569202/7a9113c911097f20.gif?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240"
  s.license      = { :type => "MIT", :file => "LICENSE" }
  s.author             = { "Fxxx" => "e2shao1993@163.com" }
  s.social_media_url   = "http://www.jianshu.com/u/3ca8f0368b98"
  s.platform     = :ios
  s.source       = { :git => "https://github.com/Fxxxxxx/FXDropDownMenu.git", :tag => "1.0" }
  s.source_files  = "FXDropDownMenu", "FXDropDownMenu/*.{h,m}"
  s.resources = "FXDropDownMenu/FXDropDownMenu.bundle/*.png"
  s.framework  = "UIKit"
  # s.dependency "JSONKit", "~> 1.4"

按照自己的信息填写:

验证podspec文件

信息填好保存之后,我们需要通过Cocoapods的验证,进入podspec所在的目录,执行

pod spec lint FXDropDownMenu.podspec
image.png

我这里没有通过验证,两个错误,一个警告,阅读一下就知道问题所在了,我们的description为空,在文件中找到这个地方,补充上,之后记住这个必填,我上面的列表里是更正过的,这里只是告诉大家怎么处理验证不通过


image.png

改完之后,我们重新提交验证,这次绿字顺利通过


image.png

Trunk发布自己的Pods

1. 注册Trunk,如果你的电脑已经注册,绕过这一步

pod trunk register email 'name'

这里email填自己的邮箱,name填自己的称呼,提交之后,系统会发一份邮件到这个邮箱验证

register
image.png
去这个链接验证就好了,验证成功
image.png
注册完成,我们pod trunk me就可以看到我们的信息了
image.png

2. Trunk Push把我们的框架提交到Cocoapods

做到这一步就很简单了,命令行pod trunk push,回车提交,等待ing

image.png
等待完成之后,大功告成啦,之后就可以像其他第三方那样,直接使用Cocoapods倒入了,是不是很方便😊

PS:关于更新自己的pods版本,重新填写podspec,填写新的版本号和新版本的git tag,像上述步骤一样提交就好了

欢迎更正错误和交流,回复评论和私信皆可

上一篇 下一篇

猜你喜欢

热点阅读