美文网首页
cocoapods私有库笔记

cocoapods私有库笔记

作者: abf319bdd291 | 来源:发表于2018-07-10 10:35 被阅读11次

    构建私有库

    索引库:存放索引地方
    私有库:存放代码地方

    1.构建索引库


    1.1 构建Cocoapods管理

    1.1.1 创建spec文件【记录私有库各个版本信息】

    pod spec create 私有库文件名称
    

    1.1.2 配置spec文件

    # ―――  Spec Metadata  元数据信息
    s.name         = "tztPodAPI" 
    s.version      = "0.0.1"#tag版本号
    s.summary      = "A short description of tztPodAPI."#概述信息
    s.description  = <<-DESC
                       DESC #DESC中间添加描述信息
    s.homepage     = "http://EXAMPLE/tztPodAPI"
    # ―――  Spec License 证书类型
    s.license      = "MIT (example)"
    # s.license      = { :type => "MIT", :file => "FILE_LICENSE" }
    #――― Author Metadata 作者信息
    s.author             = { "xxxxxx" => "xxxxx@xxx.com" }
    #――― Platform Specifics 平台设置
    s.platform     = :ios, "8.0"
    #――― Source Location 代码路径
    s.source       = { :git => "http://EXAMPLE/tztPodAPI.git", :tag => "#{s.version}" }
    #――― Source Code 代码文件
    s.source_files  = "Classes", "Classes/**/*.{h,m}"
    s.exclude_files = "Classes/Exclude"  #排查文件夹
    s.prefix_header_file = ""  #预编译头文件路径,将该文件的内容插入到Pod的pch文件内
    s.deployment_target: #配置的target
    #――― Resources 配置资源文件
    s.resources = "src/tzt.bundle/**/*.png"
    #――― Project Linking
    s.framework  = "QuartzCore" 
    s.frameworks = "SomeFramework", "AnotherFramework"#配置依赖系统库多个以','分割
    #――― Project Settings
    s.requires_arc = true # 是否启用ARC
    #依赖其他第三方
    s.dependency 'JSONKit', '~> 1.4'
    s.dependency 'otherSDK'
    

    1.2 推送到私有库

    1.2.1 将私有库配置到本地cocoapods 索引里面,并制定远端索引地址(用于推送更新使用)

     cd ~/.cocoapods/repos
     pod repo add 自定义repo名称 自定义repo名称远端索引git路径
     #移除自定义repo
     #pod repo remove 自定义repo名称  
    

    1.2.2 验证spec文件配置是否正确

    cd 私有库spec文件夹路径下
    pod lib lint  --private
    

    验证通过

    $  pod lib lint --private
     -> tztPodAPI (0.0.3)
    tztPodAPI passed validation.
    

    1.2.3 推送私有库索引到远端
    将cocoapods管理的代码打tag之后,配置好s.version版本信息,推送s.version版本到远端

    git tag 0.1.0   
    git push  --tags
    

    framework打包

    pod package tztPodAPI.podspec --force
    #--library 为.a静态库
    #默认为framework
    # --force 覆盖已存在的文件
    
    cd 私有库spec文件夹路径下
    pod repo push 自定义repo名称 要推送的spec 名称
    

    2. 获取私有库


    2.1 配置Podfile

    source 'https://github.com/CocoaPods/Specs.git'  #cocoaPods公有库spec索引路径
    source 'https://gitee.com/Oubo/oushunboPodRepo.git' #oushunboPodRepo私有库spec索引路径
    use_frameworks!
    target ‘tztPodAPIDemo’ do
       pod 'tztPodAPI' '~>0.0.1'   #  ~> 大于0.0.1版本,
    end
    
    #  pod 'tztPodAPI' '~>0.0.1'   # ~>大于等于0.0.1版本,
    #  pod 'tztPodAPI' '0.0.1'   #指定=0.0.1版本
    

    2.2 更新库

    pod install    #安装
    pod update     #更新
    

    任务列表
    1. 开放几个文件,开发源码用cocoapods管理【解决】
    2. 开发几个文件,打成framework,用cocoapods管理【正在处理】
    3. 关联系统库,关联第三方库【未处理】
    4. 添加资源文件【未处理】
    5. 直接一个第三方SDK,用cocoapods管理
    
    
    

    参考文章
    https://www.jianshu.com/p/0c640821b36f
    http://www.cocoachina.com/ios/20180511/23359.html
    https://www.jianshu.com/p/d6a592d6fced
    脚本管理 https://juejin.im/entry/58df270f61ff4b006b1227c9
    https://www.jianshu.com/p/20c0b213023c

    相关文章

      网友评论

          本文标题:cocoapods私有库笔记

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