组件化集成步骤及发布CocoaPods

2020-09-07  本文已影响0人  宇轩Simid

组件化集成步骤


1. 准备工作

2. 创建组件工程

pod lib create YXBase
1@2x.png

3. 替换ReplaceMe,创建自己的组件类,开发在这一步。

创建完成的组件工程项目中,在Pods -> Development Pods -> YXBase 中有一个ReplaceMe.m ,这个文件需要替换成我们自己的类。

我添加了 YXBaseObjc

接着需要进行 pod install 将自己的类引入其中。ReplaceMe可以删掉了。

2@2x.png

4. 关联git

完成了本地pod依赖,但是我们肯定不会是个人开发,否则弄这个组件化的意义也不大,所以我们首先得提交到远程,一般公司里都会搭建私有仓库诸如GitLab,这里就拿GitHub来做演示。

5. 这个时候其实已经关联成功,可以根据git 地址引入壳工程了。

这个时候我们可以创建一个壳工程,引入 git 地址,然后 pod install。如:我创建了一个Abc工程,并pod 我的YXBaseObjc组件。

3@2x.png 4@2x.png

6. 调用组件功能

区分版本号,组件引用三方框架 怎么处理?

那就需要修改podspec 文件,学习podspec语法

首先,需要版本区分需要打 tag

7. 推送 tag

git tag '1.0.0'
git push --tag
git push origin master

刷新git 仓库,查看多了一个 tag。这个tag分支就是将来提供给别人依赖的版本号分支,有了它,别人使用你的组件的时候就可以根据版本号来控制了。

8.每个版本需要修改你的podspec文件。

5@2x.png

接着push 到远端保持。这时候壳工程就可以根据tag来引入了。

一般我们在公司私有库上基本就到这一步就完成了。需要哪个组件,就直接引入pod就可以接入了。

但是如果想要类似 pod 'AFNetworking'这种形式引入,那就需要用 trunk方式将代码发布到CocoaPods上

等待审核通过以后,其他人就可以引用了。这个就好像提审 ipa 一样特别刺激。

9. 检查本地 podspec 是否符合规则

pod lib lint --verbose

这验证期间会遇到很多问题。需要修改warning 和 error 的问题,直到出现 YXBase passed validation 说明合法。具体看NOTE和 waining 提示修改。

接下来 就是提交到cocoapods上了

pod trunk push YXBase.podspec --verbose

提交成功后会有提示:To update use: sudo gem install cocoapods --pre。说明提交成功。

审核原来需要一个工作日左右,现在只需要几秒或几分钟。

成功后,就可以pod search到我们提交的库了。

如果搜不到,不是没传成功,是我们的本地搜索库没更新,可以先删除~/Library/Caches/CocoaPods目录下的search_index.json文件或者pod repo update一下终端执行

rm ~/Library/Caches/CocoaPods/search_index.json

再执行

pod search YXBase

10. 遇到的问题:

//在终端执行 执行过着步骤你的邮箱会收到一个链接点击即可
pod trunk register xxxxx@163.com 'xxxxx'  --verbose
//xxxxxx@163.com 你接收邮件的邮箱 
//xxxxxx    你起的名字

//在点击邮件中的链接后执行
pod trunk me
上一篇 下一篇

猜你喜欢

热点阅读