欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

iOS更新CocoaPods公有库的版本

程序员文章站 2022-04-09 19:40:54
...

前面的文章写了如何创建一个公有的CocoaPods库,这篇文章说一下如何更新库的版本,流程比较简单:

1.发布新版本,需要修改podspec文件tag版本号,也就是修改s.version的值,然后提交有改动的代码和podspec文件到Github仓库,重新打包一个Release版本

iOS更新CocoaPods公有库的版本

2.cd进入项目根目录,校验podspec文件,校验成功后,重新push podspec文件到CocoaPods官方仓库,命令如下:

pod cache clean --all // 清除pod缓存
pod lib lint JYUtils.podspec --allow-warnings // 校验
pod trunk push JYUtils.podspec --allow-warnings // 提交到CocoaPods官方仓库

在提交时如果报错:

// 报错
[!] You need to register a session first.

// 重新注册一下,然后CocoaPods会发送一封邮件到你的邮箱,按照提示打开一个连接**就ok拉,最后再重复前面步骤,提交到CocoaPods官方仓库
pod trunk register 邮箱 '名字' --description='description'

如果在自己的库中有引用到其他公有库,例如MBProgressHUD、AFNetworking等库,则需要在后面加上命令:–use-libraries

// podspec描述文件
  s.subspec 'Category' do |cc|
  cc.source_files = 'Classes/Category/*.{h,m}'
  cc.public_header_files = 'Classes/Category/*.h'
  cc.dependency 'MBProgressHUD'
  end

// 引用了第三方库
pod lib lint JYUtils.podspec --allow-warnings --use-libraries

pod trunk push JYUtils.podspec --allow-warnings --use-libraries

iOS更新CocoaPods公有库的版本

3.发布成功后,使用pod search命令重新搜索一下,应该就可以查看到最新提交的版本,如果找不到,请输入如下命令:

pod setup

命令执行完毕后,如果还是搜索不到,请删除spec本地索引库,重试一遍

// 删除索引文件: 
rm ~/Library/Caches/CocoaPods/search_index.json

// 删除成功后再次搜索: 
pod search

iOS更新CocoaPods公有库的版本

4.到此为止,更新我们的CocoaPods库就完成了,相对于新建一个库,更新版本还是比较简单的,在这个新的版本中,我分了一个文件夹,并且把公用头文件提取出来了,这里参考了一下AFNetworking和SDWebImage的做法。

iOS更新CocoaPods公有库的版本

5.在Demo工程中pod install后所有的分类文件已经移到了Category文件夹里面,JYUtils.h公共头文件也暴露了出来,结构变得清晰了些。

iOS更新CocoaPods公有库的版本

PS: “JYUtils”库是我最近的一个项目提取出来的Category工具类,后面会持续更新更多好用的东西,如果觉得好的话可以到Github上给个Start, 谢谢!https://github.com/yaoliangjun/JYUtils