美文网首页
第三方库上传至Cocoapods

第三方库上传至Cocoapods

作者: barry | 来源:发表于2017-03-15 12:41 被阅读157次

代码上传的前提是Github上已经配置好(包括忽略文件和Lincence),且代码在Github.

图片.png

1、检查cocoapods版本###

cocoapods版本要确保大于0.33.0,如果不满足执行命令更新pod版本,命令如下:
<pre><code>pod --version //查看pod版本</code></pre>
<pre><code>sudo gem install cocoapods //更新pod</code></pre>

  • 切记最好不要使用beta版本

2、注册邮箱和用户###

<pre><code>pod trunk register email@**.com 'username' --verbose</code></pre>

成功之后要打开邮箱进行验证,内容大致如下:

<pre>Hi usename,

Please confirm your CocoaPods session by clicking the following link:

https://trunk.cocoapods.org/sessions/verify/18996b08

If you did not request this you do not need to take any further action.

Kind regards, the CocoaPods team</pre>

点击链接进行验证,链接上用个地方点击‘terminal’,直接返回终端
成功之后可以用命令测试

<pre><code> pod trunk me </code></pre>

信息大致如下:

本地信息.png

3、给代码打tag并推到github###

<p> 将路径切换到工程目录下 执行命令如下:</p>

<pre><code> git tag 0.0.1 // 给代码打tag,0.0.1 是你的版本号 </code></pre>

<pre><code> git push --tag // 推送tag到github </code></pre>

<pre><code> git tag // 查看所有的tag </code></pre>

<p><code> 删除本地tag git tag -d 版本号 </code></p>
<p><code> 删除远程tag git push origin --delete tag 版本号 </code></p>

4、创建并配置podspec###

将路径切换到工程目录下 执行命令
<pre><code> pod spec create Refresh //Refresh一般和工程名保持一致(非强制) </code></pre>

执行结束生成一个Refresh.podspec,里面的信息请自行查看。
下面是一些最基本的信息(已删除注释等):

<pre>Pod::Spec.new do |s|

s.name = 'SCPeriodicScrollView'
s.version = '0.0.1' #些处的版本要和上面设置的tag保持下一致
s.summary = 'A fast, lightweight carousel figure.'
s.description = 'A fast, lightweight carousel figure, which is based on UICollectionView.'
s.homepage = 'https://github.com/tsc000/SCPeriodicScrollView'
s.license = 'MIT'
s.author = { 'tsc000' => 'email@qq.com' }
s.platform = 'ios'
s.ios.deployment_target = '7.0'
s.source = { :git => 'https://github.com/tsc000/SCPeriodicScrollView.git', :tag => s.version }
s.source_files = 'SCPeriodicScrollView/Source/*.{h,m}'
s.framework = 'UIKit'
s.requires_arc = true
s.dependency "SDWebImage"
end </pre>

<p>对于.podspec文件也可以找到一个第三方库的东西拿出来修改一下就可以。</p>

5、验证podspec文件###

执行命令验证.podspec中的填写信息
<pre><code> pod lib lint </code></pre>

如果有错误的话它会提示。但是注意的是如果有警告也是不会验证通过的,对于无关紧要的警告(包括代码中的)可以使用命令
<pre><code> pod lib lint --allow-warnings //忽略警告</code></pre>

下面我主要说下可能遇到的问题:

源文件路径不正确###

<pre>
s.source_files = "Refresh/Refresh/Source.{h,m}"
s.public_header_files = "Refresh/Refresh/Source/
.h" </pre>

source_files和public_header_files 目录一定要从你的工程根目录算起

依赖库####

<pre><code>s.dependency "JSONKit" //不写版本号直接更新最新的依赖库</code></pre>

描述长度问题####

<pre> s.summary = "123"
s.description = "1234"</pre>

  • description的长度一定要比summary的长

Tag问题####

如果pods中已经有一个版本,如果将些删掉,然后修改代码重新提交成相同的tag,那么,再用Pods集成的时候还是上一个版本的代码,

6、将代码推送到Cocoapods###

<p>执行命令</p>

<pre><code>pod trunk push Refresh.podspec //推送代码到Cocoapods</code></pre>

同样如果有不紧要的警告也要加--allow-warnings
<pre><code>pod trunk push Refresh.podspec --allow-warnings //推送代码到Cocoapods</code></pre>

上传成功.png

7、上传成功之后pods更新###

<p>代码库传入 pods之后如果 'pod search 库名' 搜索不到那么要进行<pre>pod setup</pre>操作。setup的操作是将本地仓库和服务器进行同步,同步之后也可能会出现还是搜索不到,但是在cocoapods 官网上明明可以搜的到,这时要做的是下面的操作</p>

执行命令清除搜索索引,因为新添加的库不在索引范围内

<pre><code>rm ~/Library/Caches/CocoaPods/search_index.json</code></pre>

执行完毕之后再重新search(可能会卡在 Creating search index for spec repo 'master'.. 不要急,慢慢等...) ,这时会生成新的搜索索引,新的搜索索引将会包含你的库

其它:

删除cocoapods中某一个库版本

<pre><code>pod trunk delete 库名 库版本号</code></pre>

如果上述有什么错误,欢迎指正。#

相关文章

  • 2021-01-29

    创建和管理一个公共cocoapods仓库 引言 将自己封装的第三方库上传至Cocoapods的repo存储库,这样...

  • iOS组件化开发之私有库创建(中)

    前言 上一节我们通过把代码简单的拆分上传至github,通过cocoapods的远程私有库,把拆分的代码当作第三方...

  • 第三方库上传至Cocoapods

    代码上传的前提是Github上已经配置好(包括忽略文件和Lincence),且代码在Github. 1、检查coc...

  • CocoaPods如何使用

    使用CocoaPods搜索第三方库为判断某第三方库(如AFNetworking)是否支持CocoaPods,执行如...

  • CocoaPods管理私有库

    CocoaPods管理私有库 CocoaPods介绍 CocoaPods是帮助管理xcode项目第三方开源库的一个...

  • 从零创建cocoapods私有仓库

    开发中用cocoapods管理第三方库,已经非常普遍.为了创建自己的cocoapods库,需要对cocoapods...

  • 打包framework脚本

    带cocoapods库的 不带第三方库的

  • 自建CocoaPods私有库

    世间吾为圣,孰敢称齐天。 一、CocoaPods开源库代码提交 1、上传代码库至Git库,打个tag 一般将文件路...

  • 【iOS】制作第三方库上传至Cocoapods

    一.创建远程仓库,上传demo 二.创建并修改podspec文件 这里有几点注意: s.framework 这里要...

  • Podfile文件管理

    经常使用CocoaPods来管理iOS项目中的第三方库,但是我们要使用CocoaPods来管理第三方库,前提是要写...

网友评论

      本文标题:第三方库上传至Cocoapods

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