构建私有库
索引库:存放索引地方 私有库:存放代码地方
##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
```