• iOS pod封装和升级


    项目多了之后,有一些代码在不同项目中复用到了,先找到代码,然后复制粘贴太麻烦,另外如果项目不在某个电脑上,就不能用,把自己封装的组件封装成pod是一个好办法.

    今天尝试了一下封装pod私有库,步骤其实蛮简单

    创建

    注意:起名字前先去https://cocoapods.org/搜一下是否存在同名仓库,如果存在,待会儿用trunk发布会提交失败

    1. 先在github上创建一个自己的公开的仓库(记得添加MIT LICENSE)

    2. 克隆仓库到本地

    3. 创建.podspec文件

    pod spec create +名称(和仓库名称一致)

    pod spec create YFToolKit
    

    4. 配置.podspec

    s.name          = "YFToolKit"
    s.version       = "0.0.1"
    s.summary       = "我的自定义库 YFToolKit."
    s.description   = <<-DESC
                        我的自定义库,目前是测试版,里面啥都没有!
                    DESC
    s.homepage      = "https://github.com/TsingYii/YFToolKit"
    s.license       = "MIT"
    s.author        = { "yufang" => "yufang93@qq.com" }
    s.platform      = :ios, "8.0"
    s.source        = { :git => "https://github.com/TsingYii/YFToolKit.git", :tag => "#{s.version}" }
    s.source_files  = "Classes", "Classes/**/*.{h,m}"
    s.framework     = "UIKit", "Foundation"
    //私有库依赖的第三方
    //s.dependency    'AFNetworking', '~> 3.1.0' 
    //s.dependency    'Masonry', '~> 1.0.2'
    

    5.验证pod是否通过

    pod lib lint
    

    6.提交代码到git(add commit push)

    7.设置tag

    git tag 0.0.1
    git push --tags
    

    8.使用Trunk发布pod

    8.1 注册trunk

    pod trunk register 邮箱 '用户名' --description='描述'  

    然后去邮箱验证

    8.2验证是否注册成功

    pod trunk me
    

    8.3发布

    pod trunk push [NAME.podspec](也可省略提交对象)

    然后就可以pod search 搜索自己的库了

    注意: 仅仅是本地可以使用,远程发布需要审核,据说需要一天,官方会回复邮件,且等着明天再看,(两天后),在我自己的电脑上需要先删除~/Library/Cache/CocoaPods/search_index.json,之后就可以search到了,然后换了一台电脑,仅仅删掉search_index.json还不行,需要先pod setup之后再删除search_index.json,然后再搜索就可以搜索到了

    疑问: 有一个疑问是,在https://cocoapods.org/这个上面却搜索不到,不止为何?

     升级

    1.修改代码

    2.提交到git

    3.修改spec.version中的版本号

    4.打tag

    5. 发布

    pod cache clean --all // 清除pod缓存
    pod lib lint   //校验
    pod trunk push xxxx.podspec --allow-warnings//发布

    删除pod

    pod trunk delete YFToolKit 0.0.1  //删除
    pod trunk deprecate YFToolKit     //废弃
    pod setup

    参考资料

    https://blog.csdn.net/yaoliangjun306/article/details/73550902 (iOS更新CocoaPods公有库的版本)

    https://www.jianshu.com/p/f61977e58eca(制作自己的CocoaPods封装)

  • 相关阅读:
    为什么hive表有数据,但count(*)返回0
    数仓建设时,要建历史表,用于保存历史数据,用于日后出问题时,起修复数据的作用。按日期分区,每天都把所有的数据存到当天的分区里
    get_json_object用以获取json类型的字段的值
    str_to_map语句,字符串类型变map类型
    按更新时间取最新记录
    hive临时表
    数仓分层
    次日留存、七日留存
    转义
    数据库三范式
  • 原文地址:https://www.cnblogs.com/yufang/p/11383859.html
Copyright © 2020-2023  润新知