您的位置:首页 > 移动开发 > IOS开发

iOS 使用cocoapods+github托管代码(制作发布 cocoapods 库)

2017-11-27 15:41 666 查看
最近在研究组件化开发这个东东,发现许多公司组件化开发都是用的 cocoapods 来做管理,那么就研究一下 cocoapods 来托管自己的代码。参考了多方文章,踩坑许久终于成功了,现在整理一下~

大致流程如下:

【一】新建 github 项目并与本地项目关联

【二】创建podspec文件

   1. 了解 podspec

   2. 配置 podspec

【三】新建版本,注册 cocoapods

【四】上传{project}.podspec到CocoaPods官方仓库

详细流程:

【一】新建 github 项目并与本地项目关联

  1.注册一个 github账号(有账号的可以忽略~)

  2.如图1 点击 new repository 在add lisence选择MITlicense





  3.生成后的工程 下载到你的本地

  地址就是地址栏的地址



  4.创建一个本地项目 在你github 项目关联的地址下

  楼主是用的 xcode 创建的一个叫PodDemo 的项目

  随便新建几个文件



创建 README.md 可以参考下面文章

创建README.md文件

博主用的是 git 命令来关联工程的,关于 git 命令是用可以学习

Git教程

【二】创建podspec文件

  1.进入目录

cd 工程路径(这里指的是和你的 README.md 同级)




  2.新建Podspec文件

pod spec create 文件名称




出现这个的时候就是成功了

  3.打开这个文件

    可以用多种方式打开,博主这边是用的是 vim 编辑器

    输入如下命令

vi FJObject.podspec


  打开以后会发现很多很多内容,可以学习下这篇博客

  http://www.jianshu.com/p/a72a529dc659

  推荐修改里面内容如下

Pod::Spec.new do |s|
s.name         = "HcdCachePlayer"
s.version      = "0.0.1"
s.summary      = "pod测试"
s.description  = <<-DESC
我是一个 pod 测试的 demo
DESC
s.homepage     = "https://github.com/Jvaeyhcd/HcdCachePlayer"
s.license      = { :type => "MIT", :file => "LICENSE" }
s.author             = { "fujia" => "aaa@qq.com" }
s.platform     = :ios, '7.0'
s.source       = { :git => "https://github.com/ButterflyDance/PodTest.git", :tag => s.version.to_s }
s.source_files  = "hcdCachePlayer/**/*.{h,m}"
s.resource  = "hcdCachePlayer/hcdCachePlayer.bundle"
s.frameworks = "UIKit", "AVFoundation", , "Foundation"
s.requires_arc = true
s.dependency "Masonry"
end


  按下“esc” 输入“:wq”(保存并退出)

  执行如下命令 查看是否编译通过

pod lib lint FJObject.podspec
如果有警告可以忽略 并使用如下命令执行
pod lib lint FJObject.podspec —allow-warnings


  如果有报错可以通过

  http://www.jianshu.com/p/283584683b0b

  http://www.jianshu.com/p/b9a28b6ab1e1

  这两篇文章查找问题

  最后输出这个表示通过



【三】新建版本,注册 cocoapods

  1.构建新 release 版本





注意: 这里的Tag verson 一定要和上面设置的s.version以及 s.source 中的 tag保持一致.

  点击Public release 即可完成

  2.注册cocopods 账号

    打开终端 输入命令

// 邮箱  用户名   描述信息
pod trunk register aa@qq.com 'fujia' --description='Test1'


    如果注册过 可以使用如下命令

pod trunk register eloy@example.com --description='Work Laptop'
pod trunk register eloy@example.com


    随后可以去邮箱里面点击认证邮件

    使用如下命令认证

pod trunk me


输出如下图则成功



【四】上传{project}.podspec到CocoaPods官方仓库

  1.输入如下命令检查是否可用

pod spec lint
如果有警告可以使用如下命令忽略全部警告
pod spec lint —allow-warnings


  2.上传代码

pod trunk push FJObject.podspec


等待一会会看到如下图所示



可以使用

pod search LZTool


搜索自己的项目

如果现实查找不到可以使用

pod setup


更新自己 cocopods 库

也可以使用新工程下载 pod 代码



总结:一路上遇到很多很多的坑,这个时候需要静下心来好好学习,查阅资料,总结经验,不断提升自己,千万不要轻言放弃。

【参考文章】

[Cocoapods]使用Cocoapods托管代码

[Cocoapods]项目添加Cocoapods支持遇到的坑

CocoaPods的制作过程

Github代码添加Cocoapods支持
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  ios github cocoapods