iOS相关记录本

发布或删除SDK到cocoapods流程

2018-02-08  本文已影响26人  woniu

由于经常发布SDK到cocoapods上面,遇到了一些坑,所以在这里和大家分享一下,尽量避免大家重复掉坑。其实把文件上传到cocoapods拢共分三步,第一步配置SDK文件,第二部上传文件到GitHub上,第三步上传文件到cocoapods。完美!下面我们来详细介绍下详细步骤:

1、配置SDK相应的文件

a:配置trs_ta_sdk.podspec文件
这个是重中之重,一旦配置出现错误那么就会报各种错,所以这里一定要细心。下图是SDK的整体文件:


SDK内部文件.png

对trs_ta_sdk.podspec文件进行配置:


trs_ta_sdk.podspec.png
Pod::Spec.new do |s|

#名称
 s.name        = 'trs_ta_sdk' 

#版本 这里的版本号一定要与我们提交到GitHub上的tag一致,否则无法上传成功
  s.version      = '1.5.7'     

#许可证
  s.license      = 'MIT'     
  
#项目简介    
  s.summary      = 'A delightful collection of SDK 1.5.7'  

#项目主页地址  
  s.homepage     = 'https://github.com/caiqingchong/SDK-Framework' 

#项目的地址 (注意这里的tag位置,可以自己写也可以直接用s.version,但是与s.version一定要统一)
  s.source       = { :git => 'https://github.com/caiqingchong/SDK-Framework.git', :tag => s.version } 

 #支持arc
  s.requires_arc = true  

#支持最小系统版本
  s.platform     = :ios,'7.0'

#依赖的库  这里自行填写,不要遗漏
  s.frameworks   = 'UIKit', 'Foundation','CoreTelephony'
#依赖库  
//s.libraries    = 'sqlite3','icucore','z'

#作者
  s.author             = { '张凯' => '2273034940@qq.com'}  

#你的GitHub地址
  s.social_media_url   = 'https://github.com/caiqingchong' 

#需要包含的源文件
s.source_files = 'trs_ta_sdk/trs_ta_sdk.framework/Headers/*.{h}'

#你的SDK路径
s.vendored_frameworks = 'trs_ta_sdk/trs_ta_sdk.framework'

#SDK头文件路径
s.public_header_files = 'trs_ta_sdk/trs_ta_sdk.framework/Headers/TRSRequest.h','trs_ta_sdk/trs_ta_sdk.framework/Headers/EventInfo.h','trs_ta_sdk/trs_ta_sdk.framework/Headers/TRSOperationInfo.h'

end

至此,我们已经将最重要的文件配置完毕,下一步上传SDK到GitHUb中。

2、上传文件GitHub

a:具体的上传步骤想必各位老司机早已烂熟于胸,就不一一写出来了。

自行编辑README.md。比如使用方法、版本号、改动等
$ git add .

$ git commit -m 'sdk-1.5.7'

$ git push -u origin master

创建SDK相应的tag
$ git tag 1.5.7

提交tag到GitHub
$ git push origin --tags

此时我们的工作已经完成了99%,剩下的就是上传cocoapods了。

3、将文件发布到cocoapods

检查podspec文件
$ pod spec lint trs_ta_sdk.podspec
上传项目到cocoapods中
$ pod trunk push trs_ta_sdk.podspec

然后,稍作等待就会出现成功的标识。如下图:


上传cocoapods.png

然后,我们搜索上传的SDK,如下图:


sdk.png

4、将文件从cocoapods中删除

这里我们就贴下代码,不真的删除了,毕竟客户正在用,一旦出现了什么问题就悲催了。

删除文件名+版本号
pod trunk delete trs_ta_sdk 1.5.7

cocoapods使用遇到的一般问题解决:
https://www.jianshu.com/p/1dea9987c647

MacRVM安装ruby 2.0.0的时候出现错误(很重要,我就是在这里栽跟头的):
http://blog.csdn.net/luohancc/article/details/46897247

unable to find utility "simctl"的解决方案(重装cocoapods的时候很容易遇到这个问题):
http://www.hudongdong.com/bug/772.html

5、多人协作发布SDK到cocoapods

在需要多人维护SDK的场景下,我们怎么才能实现多人同时发布SDK到cocoapods呢?

上一篇下一篇

猜你喜欢

热点阅读