组件4:开发框架的人需要做的

开发框架的人需要做的事情:

0. 创建库工程, 添加源文件到Classes文件夹
1. 上传项目到github, 并且打好标签;
  1. git push origin master
  2. git tag '1.0.0'
  3. git push --tags
2. 配置并上传框架的 PodSpec 文件, 并使用trunk的方式上传
  1. PodSpec理论
* PodSpec 文件 描述自己的框架信息
* pod install 就是根据这个文件里面的 源文件路径进行安装的
* 注意: 一般这个文件的名称和工程名称保持一致
* 创建命令:`pod spec create 文件名称`
  1. PodSpec文件内容格式
* 可以到官网查看,也可参考github上别人家的PodSpec文件
  1. 上传之前本地和远程验证
```
本地验证
pod lib lint 项目.podspec --allow-warnings
远程验证
pod spec lint 项目.podspec --allow-warnings
```
  1. 注册trunk,通过trunk推送podspec文件,pod trunk push(或pod trunk push 项目.podspec),上传这个描述文件到cocoapods在github上的仓库中(https://github.com/CocoaPods/Specs
podspec文件在终端中提交成功

》》如何注册trunk:

1、终端输入:pod trunk register 906197xxx@qq.com 'luofeng' --verbose
2、终端提示:打开上述邮箱,点击链接,成功后回到终端;
3、提交podspec文件:pod trunk push LFCategory.podspec
打开链接后成功

》》pod trunk push xxxx.podspec失败的几种可能:
1、podspec文件的version和pod打的tag没对应上;
2、podspec的文件名已经别人已经用了,这个需要修改;(终端中会提示该pod文件是别人的);

podspec文件名被占用

3、trunk还没注册;

提示trunk还没注册
  1. 等待审核。

注意:pod trunk push 上传spec到CocoaPods/Specs中,也可按照正常的操作, 先fork , 然后提交 pull request

3. 更新本地pod 第三方框架信息数据源(可省略)

方式一:pod setup
方式二:可以省略这一步骤, 因为上述提交, 直接更新了本地索引库

4. 测试

使用pod search 命令搜索自己的框架, 如果可以搜索到, 那么代表审核通过了;如果没搜到/Users/fengluo/Library/Caches/CocoaPods这个文件夹下把search_index.json删了,重新search会再生成一个search_index.json。

备注:远程库的spec文件需要修改或要注意的字段:

Pod::Spec.new do |s|

  #项目名称
  s.name         = "lovellClasses"

  #版本
  s.version      = "0.0.3"

  #简介
  s.summary      = "description."

  #详细描述
  s.description  = "这个是详细描述,一定要注意,字数,要比summary多,否则会报错."

  #框架首页
  s.homepage     = "https://github.com/mylovell/testPerson"

  #许可证
  s.license      = "MIT"

  #作者
  s.author             = { "yyyy" => "xxxx@qq.com" }

  #设备
  s.platform     = :ios, "8.0"

  #源码地址,还有这里的tag要和上面的s.versio保持一致
  s.source       = { :git => "https://github.com/xxxx/testPerson.git", :tag => "#{s.version}" }

  #源码中指定哪些文件需要下载
  s.source_files  = "Classes", "Classes/**/*.{h,m}"

  #s.exclude_files当前用不了,可以不要
  # s.exclude_files = "Classes/Exclude"

end

开发框架的人需要做的事情20170705_4.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容