背景:
这两天项目的尾巴收的差不多了,趁有些时间,就写一下关于
提交开源代码到CocoaPods
和打包.framework静态库
的文章吧。打包.framework静态库
请移步到下一篇。CocoaPods是非常好用的iOS依赖管理工具,使用它可以方便的管理和更新项目中所使用到的第三方库,以及将自己的项目中的公共组件交由它去管理。废话不多说,开始正题。
步骤一:我们需要建一个远程仓库,无论是在github上还是在码云上都可以,下面的截图是我在码云上创建的远程仓库。
创建远程仓库步骤二:执行pod lib create MZLibrary
,会为我们生成上传CocoaPods所需文件。
执行代码,生成所需文件
步骤三:将我们的代码copy到生成工程的Pods -> Development Pods -> 库名 -> 库名 -> Classes目录下,cd
到生成的文件夹内,与远程仓库进行链接。
存放的目录
步骤四:配置MZLibrary.podspec
配置MZLibrary.podspec
podspec属性:
Spec Metadata(Spec资料) | |
---|---|
s.name | 名称 |
s.version | 版本 |
s.summary | 简介 |
s.description | 详细介绍 |
s.homepage | 主页地址 |
s.screenshots | 屏幕截图 |
Spec License(Spec执照) | |
s.license | 开源协议 |
Author Metadata(作者资料) | |
s.author | 作者、邮件地址 |
s.authors | 多个作者 |
s.social_media_url | 社交地址 |
Platform Specifics(平台特性) | |
s.platform | 平台 |
s.ios.deployment_target | ios部署目标 |
s.osx.deployment_target | osx部署目标 |
s.watchos.deployment_target | watchos部署目标 |
s.tvos.deployment_target | tvos部署目标 |
Source Location(源定位) | |
s.source | 开源地址、版本号 |
Source Code(源代码) | |
s.source_files | 开源文件夹、文件 |
s.exclude_files | 排除文件夹、文件 |
s.public_header_files | 头文件 |
Resources(资源) | |
s.resource | 资源文件 |
s.resources | 多个资源文件 |
s.preserve_paths | 保留路径 |
Project Linking(项目关联) | |
s.framework | 框架 |
s.frameworks | 多个框架 |
s.library | 库 |
s.libraries | 多个库 |
Project Settings(项目设置) | |
s.requires_arc | 需要ARC模式 |
s.xcconfig | 配置 |
s.dependency | 依赖Podspecs |
步骤五:验证库名.podspec
是否合法
pod lib lint 库名.podspec
有效示例
步骤六:验证合法之后,将代码上传到远程仓库并打tag,特别需要注意的是tag应该与podspec里的版本号保存一致。
步骤七:使用pod trunk me
查看在电脑上是否配置过信息,如果没有的话,执行pod trunk register 邮箱 '用户名' --description='描述'
,之后执行pod trunk push 库名.podspec
将开源库推送到CocoaPods
检查个人信息
上传成功
如果搜索不到,可以更新本地的CocoaPods库:
rm ~/Library/Caches/CocoaPods/search_index.json
pod repo update
搜索结果
网友评论