制作一个属于自己的CocoaPods文件!
2016-04-22 18:37
441 查看
用了那么久别人的库,每次都是 pod install 一下就能用了,有没有想过自己弄一个出来,让别人在他的 Podfile 里写上你的库,然后 pod install?
今天我们就来实现它!
首先,打开终端,进入你想放置这个 pod 的文件夹中。(比如我的是一个叫做 Github 的文件夹)
然后输入命令:pod lib create LZNPopoverView(把它换成你的库的名字),然后按下回车:
那一大堆都是自动生成的,不用管,然后它会让你选择语言,这里我输入的是Objc,然后按下回车:
然后它会让你选择是否要在库中加入一个demo,这里通常选Yes,然后按下回车:
然后它会问你用那个测试的框架,这里我选的是None,然后按下回车:
然后它会问你是否要做基于视图的测试,这里我选的是NO,然后按下回车:
终于到了最后一个问题了,它会问你的类的前缀是什么,我的自然是 LZN,然后按下回车,会看到下面这两句话,然后就进入一个等待时期(大概要等两三分钟):
大概过了两三分钟后,就会自动弹出来一个 Xcode 的工程了,这个工程就是你刚建的 pod!
如果回到终端,可以看到如下代码,说明你已经成功了:
还没完呢。现在别人还不能通过 CocoaPods 下载你的库哦。
接下来我们打开刚才那个弹出来的新工程,如图所示。ReplaceMe.m 就是需要我们替换掉的文件,也就是说用你自己写的库换掉这个文件就行了。
然后我们点开 Podspec Metadata,然后点开后缀名为 .podspec 的文件:
在这个文件中有一些需要修改的东西。比如 s.summary 和 s.description,它们就是你的库的简介。
把它们换成你自己写的简介就行了,比如我写的是这样:
然后继续往下找,找到 s.homepage,把 <GITHUB_USERNAME> 换成你的 github 昵称。
同理 s.source 的 <GITHUB_USERNAME> 也是一样。
如果有 twitter 的话,可以把 s.social_media_url 前面的 ‘#' 号去掉,然后把 <TWITTER_USERNAME> 换成你的推特昵称。
'#' 号和注释掉了意思差不多。前面有 '#' 号就相当于这行被注释了,想用这行的话就把这行前面的 '#' 号去掉即可。
然后看最下面的这两句:
如果你的库用到了某些框架,就比如说 MapKit,那就把这行前面的 '#' 号去掉
如果你的库用到了其它的库,也就是依赖于其它库,比如说 AFNetworking,那就把这行前面的 '#' 号去掉。用了什么库就把名字改成什么即可。比如只用到了 FMDB,那就把 AFNetworking 这个单词换成 FMDB。
然后打开 Example for LZNPopoverView,这里就是写 demo 的地方了。
快成功了!接下来在 github 上创建一个仓库(repository),然后把我们的这个库加进去。
首先把改动提交一下,然后要修改 LZNPopoverView.podspec 里的 s.version(以下称tag),比如说设置成 0.1.1,这就是我们这个库的当前版本。然后推送。注意:设置 tag
要在提交和推送之间做。
修改 tag 的命令是 git push --tags 如果修改成功了,可以在 github 上看到 tag 已经改成了 0.1.1,如下图所示:
接下来注册一个 trunk 的 session。打开终端,输入 pod trunk register XXX YYY
其中XXX是你的邮箱,YYY是你的名字,然后按下回车,会提示你去邮箱中验证,如下图所示:
然后去你的邮箱里验证一下即可。输入 pod trunk me 可以查看你的个人信息:
这样就注册成功了。可以看到现在 Pods 是 None,说明还没有 pods。我们继续。
先进入你的库所在的文件夹,然后输入 pod lib lint XXX,其中XXX就是你的库中后缀名为 .podspec 的文件的名字,如下图所示:
然后等大约1分钟左右就成功了,如下图所示:
然后输入 pod trunk push,如下图所示:
然后再等 3 分钟左右,成功的话如下所示:
啊哈哈!!!我太激动了!~~~这也是我的第一个 pod!
快来试试!现在用 pod search LZNPopoverView 试试,就像以前经常做的 pod search AFNetworking 一样!
大功告成了!!!现在别人也可以通过 pod install 下载我们自己写的库了!
如果现在再来看看我们的个人信息 pod trunk me,等一分钟后可以看到我们已经有了一个自己的 pod!!!
今天我们就来实现它!
首先,打开终端,进入你想放置这个 pod 的文件夹中。(比如我的是一个叫做 Github 的文件夹)
然后输入命令:pod lib create LZNPopoverView(把它换成你的库的名字),然后按下回车:
那一大堆都是自动生成的,不用管,然后它会让你选择语言,这里我输入的是Objc,然后按下回车:
然后它会让你选择是否要在库中加入一个demo,这里通常选Yes,然后按下回车:
然后它会问你用那个测试的框架,这里我选的是None,然后按下回车:
然后它会问你是否要做基于视图的测试,这里我选的是NO,然后按下回车:
终于到了最后一个问题了,它会问你的类的前缀是什么,我的自然是 LZN,然后按下回车,会看到下面这两句话,然后就进入一个等待时期(大概要等两三分钟):
大概过了两三分钟后,就会自动弹出来一个 Xcode 的工程了,这个工程就是你刚建的 pod!
如果回到终端,可以看到如下代码,说明你已经成功了:
还没完呢。现在别人还不能通过 CocoaPods 下载你的库哦。
接下来我们打开刚才那个弹出来的新工程,如图所示。ReplaceMe.m 就是需要我们替换掉的文件,也就是说用你自己写的库换掉这个文件就行了。
然后我们点开 Podspec Metadata,然后点开后缀名为 .podspec 的文件:
在这个文件中有一些需要修改的东西。比如 s.summary 和 s.description,它们就是你的库的简介。
把它们换成你自己写的简介就行了,比如我写的是这样:
然后继续往下找,找到 s.homepage,把 <GITHUB_USERNAME> 换成你的 github 昵称。
同理 s.source 的 <GITHUB_USERNAME> 也是一样。
如果有 twitter 的话,可以把 s.social_media_url 前面的 ‘#' 号去掉,然后把 <TWITTER_USERNAME> 换成你的推特昵称。
'#' 号和注释掉了意思差不多。前面有 '#' 号就相当于这行被注释了,想用这行的话就把这行前面的 '#' 号去掉即可。
然后看最下面的这两句:
如果你的库用到了某些框架,就比如说 MapKit,那就把这行前面的 '#' 号去掉
如果你的库用到了其它的库,也就是依赖于其它库,比如说 AFNetworking,那就把这行前面的 '#' 号去掉。用了什么库就把名字改成什么即可。比如只用到了 FMDB,那就把 AFNetworking 这个单词换成 FMDB。
然后打开 Example for LZNPopoverView,这里就是写 demo 的地方了。
快成功了!接下来在 github 上创建一个仓库(repository),然后把我们的这个库加进去。
首先把改动提交一下,然后要修改 LZNPopoverView.podspec 里的 s.version(以下称tag),比如说设置成 0.1.1,这就是我们这个库的当前版本。然后推送。注意:设置 tag
要在提交和推送之间做。
修改 tag 的命令是 git push --tags 如果修改成功了,可以在 github 上看到 tag 已经改成了 0.1.1,如下图所示:
接下来注册一个 trunk 的 session。打开终端,输入 pod trunk register XXX YYY
其中XXX是你的邮箱,YYY是你的名字,然后按下回车,会提示你去邮箱中验证,如下图所示:
然后去你的邮箱里验证一下即可。输入 pod trunk me 可以查看你的个人信息:
这样就注册成功了。可以看到现在 Pods 是 None,说明还没有 pods。我们继续。
先进入你的库所在的文件夹,然后输入 pod lib lint XXX,其中XXX就是你的库中后缀名为 .podspec 的文件的名字,如下图所示:
然后等大约1分钟左右就成功了,如下图所示:
然后输入 pod trunk push,如下图所示:
然后再等 3 分钟左右,成功的话如下所示:
啊哈哈!!!我太激动了!~~~这也是我的第一个 pod!
快来试试!现在用 pod search LZNPopoverView 试试,就像以前经常做的 pod search AFNetworking 一样!
大功告成了!!!现在别人也可以通过 pod install 下载我们自己写的库了!
如果现在再来看看我们的个人信息 pod trunk me,等一分钟后可以看到我们已经有了一个自己的 pod!!!
相关文章推荐
- RPC failed; result=22, HTTP code = 411
- 查看github pages文档的方式
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 使用BAE的基于Web.py的简单博客程序
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- git更新已經刪除的文件
- 提取Git每次提交后Commit的文件
- GIT迁移服务器
- 不可修补的 iOS 漏洞可能导致 iPhone 4s 到 iPhone X 永久越狱
- iOS 12.4 系统遭黑客破解,漏洞危及数百万用户
- 分布式版本管理git入门指南使用资料汇总及文章推荐
- 每日安全资讯:NSO,一家专业入侵 iPhone 的神秘公司
- [转][源代码]Comex公布JailbreakMe 3.0源代码
- git终极指南:在实际开发中的应用
- 两分钟学会如何在github托管代码
- 讲解iOS开发中基本的定位功能实现
- iOS中定位当前位置坐标及转换为火星坐标的方法
- js判断客户端是iOS还是Android等移动终端的方法