美文网首页
使用pod实现组件化开发

使用pod实现组件化开发

作者: AntKing | 来源:发表于2019-10-30 13:00 被阅读0次

Pods的搭建组件步骤如下:

第一:本地私有repo

1 本地创建私有的 repo 仓库(需要与远程 git 托管地址绑定)

第二: 组件. podspec

1 创建组件
2 验证当前的. podspec 的有效性
3 发布当前的 pod 版本(默认会推送到远端)

本地私有repo搭建详情

  • 现在码云或github创建一个自己用的repo,名字随便起,最好带个readme.md文件,然后把仓库地址拷贝下来
https://gitee.com/yushang007/Personal_Repo.git
  • 本地创建私有的 repo 仓库 打开term 控制台,通过执行如下命令进行本地私有的 repo 的创建
pod repo add Personal_Repo    https://gitee.com/yushang007/Personal_Repo.git
  • 执行命令之后,我们可以打开本地的 repo 查看私有的库是否创建成功,使用如下命令:
cd ~/.cocoapods/repos

  • 执行命令
ls -l

出现以下内容
drwxr-xr-x 6 mac staff 192 10 17 09:22 MDSpecs
-rw-r--r-- 1 mac staff 0 10 17 09:22 Spec_Lock
drwxr-xr-x 7 mac staff 224 6 5 14:53 aliyun
drwxr-xr-x 21 mac staff 672 6 20 11:04 artsy
drwxr-xr-x 3 mac staff 96 10 30 11:15 Personal_Repo
drwxr-xr-x 13 mac staff 416 10 29 15:00 master
drwxr-xr-x 16 mac staff 512 10 29 15:00 trunk

  • 执行命令
cd Personal_Repo
  • 随便修改一下readme文件,然后git 提交一次
git add .
git commit -m "ss"
git push -u origin master 

组件. podspec创建

  • 1.打开终端cd到你要创建的目录下(方便下我就放在桌面了)
    • 比如 cd Desktop/
    • 然后输入pod lib create xxx (xxx为你的组件名字)
    • 之后会有选项对私有的pod库进行一些选择


      20191030124931.jpg
  • 然后Xcode会自动帮我们打开这个项目,我们的组件放在Classes文件夹下


    20191030125111.jpg
  • 接下来要配置.podspec文件了

配置 .podspec 后缀文件 
s.name : 项目名
s.version : 版本号(需跟后面打 Tag 的值相等)
s.homepage : 项目主页(请注意,这里的地址跟git仓库地址有一定差别,请看清截图示例并区分)
s.license : 开源协议(这里我们选择 MIT )
s.source : Git 仓库地址(第二步所创建的仓库地址)
s.ios.deployment_target : 项目最低支持版本
s.source_files : 具体去那个目录下下载特定共享代码(注意:这里的地址与 .podspec 文件同级目录开始,,示例:PrivateLib/Classes/** /*表示如下目录下的所有文件
s.frameworks :项目所依赖的系统库(如果需要)
s.dependency :项目所依赖的第三方库(如果需要)
组件必须改的.jpg
  • 接下来要验证一下
验证 .podspec文件的格式的正确性 
终端cd到该目录,输入

pod lib lint  --allow-warnings
  • 建一个码云的组件仓库
    将本地PrivateLib工程与远程私有 Git 仓库关联
    git remote add origin 远程私有仓库地址
    git pull origin master --allow-unrelated-histories
    拉去数据的时候会出现冲突,我们把head里的删掉,保留远程的
    git add .
    git commit -m "fix"
    git push origin master
  • 然后本地和远程验证文件有效性
    pod spec lint --allow-warnings
    此处会有报错,请不要慌张,那是因为我们没有tag

  • 执行以下代码
    git tag -a 0.1.0 -m '0.1.0标签'
    git push –-tags
    pod spec lint --allow-warnings

  • 最后向私有的 PrivatePodspec 远程仓库中提交 .podspec
    终端进入到之前桌面创建的YsplayerSDK文件夹,然后推送

pod repo push Personal_Repo YsplayerSDK.podspec --allow-warnings

更新私有库,构建不同版本
1.修改.podspec文件中的s.version 号;
2.修改更新code,提交code在Sourcetree打新的tag;
3.两步,新增加tag,在桌面创建的文件重新push一遍
4.pod search 验证一下结果;

使用私有库
podfile里面添加如下代码

source'https://gitee.com/yushang007/kkpsersonalrepo.git' //自己的私有spec仓库
source'https://github.com/CocoaPods/Specs.git' //cocoapods公共spec仓库
target "TableViewTest" do
pod 'xxx', '~> 0.1.1'
end

私有库版本升级维护

1、代码升级

切换到pod库模板工程文件夹下,使用终端命令如下:

git add .

git commit -m '注释'

git push origin master
2、版本升级

git tag -a '新版本号' -m '注释'

git push --tags
****二、修改pod库模板工程中的.podspec文件版本号;****

修改pod库模板工程中的.podspec文件中s.version的值;

注:s.version的值要与“版本升级”中的tag值保持一致;

****三、将pod库模板工程中的.podspec推送给本地私有库;****

切换到pod库模板工程文件夹下,使用终端命令如下:

pod repo push SpecName XXX.podspec
注:

SpecName:pod库模板工程中的.podspec文件中的s.name;

XXX:pod库模板工程中的.podspec文件名;

相关文章

  • 私有CocoaPods库使用一

    目的 私有pod库引用私有pod库或静态库 使用场景 项目组件化, 工具组件化很好实现, 但是业务组件化就没那么容...

  • 组件化开发-简单介绍

    组件化基本概念不再此介绍了,本文选择的组件化实现方式是用pod集成。 使用pod集成组件前,我们需要提前做的准备工...

  • 滚动栏的开发

    滚动栏的开发 1.组件化在开发之前2.组件化在开发之后 组件库开发流程将控件封装成pod库1.pod lib cr...

  • 使用pod实现组件化开发

    Pods的搭建组件步骤如下: 第一:本地私有repo 1 本地创建私有的 repo 仓库(需要与远程 git 托管...

  • (21)打鸡儿教你Vue.js

    组件化思想: 组件化实现功能模块的复用 高执行效率 开发单页面复杂应用 组件状态管理(vuex) 多组件的混合使用...

  • Using Pod Lib Create(使用cocoapods

    Using Pod Lib Create(使用cocoapods组件化管理) 创建空文件夹 使用pod去创建Spe...

  • 组件化开发 : pod私有化组件

    今天特别开心,终于将pod私有化组件弄会了~ 前提条件:我们进行组件化开发,需要使用cocospod管理,那么我们...

  • Target-action 组件化demo

    组件化 组件化就是将模块独立开发,建立pod仓库,通过引入仓库,利用target-action调用模块内的功能。 ...

  • 组件化思路整理

    组件化设计 1.路由(URL/Target-Action/BeeHive)2.pod的使用3.依赖注入 pod->...

  • iOS组件化__03

    1.组件化的资源处理 1.1 使用pod lib create创建的组件工程 showinFinder,有个Ass...

网友评论

      本文标题:使用pod实现组件化开发

      本文链接:https://www.haomeiwen.com/subject/jbkovctx.html