首页 > 代码库 > 创建podspec文件,为自己的项目添加pod支持

创建podspec文件,为自己的项目添加pod支持

<style>p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 16.0px "Helvetica Neue"; color: #2f2f2f } span.s1 { }</style>

Cocoapods作为iOS开发的包管理器,给我们的开发带来了极大的便利,而且越来越多的第三方类库支持Pod,可以通过Pod傻瓜式的集成到自己的工程中,那么问题来了,我自己也有一系列的小工具类,怎么让它也支持pod集成,进而以后的项目开发更加的方便的使用呢?

 

这是第二遍操作了,第一遍学习使用卡在中间,一直不成功....哈哈,多亏了师傅的帮助和解答.

这里再次操作熟练来记录下,算是总结吧:

 

<style>p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 22.0px "Helvetica Neue"; color: #2f2f2f } span.s1 { }</style>

1.上传项目源码:

 

<style>p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 16.0px "Helvetica Neue"; color: #2f2f2f } span.s1 { } span.s2 { color: #3194d0 }</style> <style>p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px "Helvetica Neue"; color: #454545 } p.p2 { margin: 0.0px 0.0px 2.0px 0.0px; font: 14.0px ".PingFang SC"; color: #454545 } span.s1 { font: 12.0px ".PingFang SC" } span.s2 { font: 14.0px "Helvetica Neue" }</style>

把项目源码上传到gitHub仓库, https://github.com/PengSiSi/iOS_PSCategory

clone到本地,如果项目本来就在gitHub的仓库中,直接clone到本地即可.

 

<style>p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px ".PingFang SC"; color: #454545 } span.s1 { font: 12.0px "Helvetica Neue" }</style>

2.用终端命令cd到本地项目目录并执行如下命令:

 

<style>p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px "Helvetica Neue"; color: #454545 }</style>

pod spec create iOS_Category

 

技术分享

 

<style>p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 16.0px "Helvetica Neue"; color: #2f2f2f } span.s1 { }</style>

这时候本地就生成一个iOS_Category.podspec文件

技术分享

 

<style>p.p1 { margin: 0.0px 0.0px 2.0px 0.0px; font: 14.0px "Helvetica Neue"; color: #454545 } span.s1 { font: 14.0px ".PingFang SC" }</style>

3.用编辑器打开.podspec文件,我用的Xcode打开的.

 

Pod::Spec.new do |s|
s.name             = iOS_Category
s.version          = 0.0.1
s.summary          = iOS_Category is a iOS_Category
s.homepage         = https://github.com/PengSiSi/iOS_PSCategory
s.license               = MIT
s.author                = { PengSi => 1299625033@qq.com }
s.source           = { :git => https://github.com/PengSiSi/iOS_PSCategory.git,:tag => s.version.to_s }
s.source_files     = iOS_Category/*.{h,m}
s.frameworks       = UIKit, Foundation
s.requires_arc     = true
s.ios.deployment_target = 7.0

end

4.源代码添加对应的Tag;

<style>p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px "Helvetica Neue"; color: #454545 } span.s1 { font: 12.0px ".PingFang SC" }</style>

git tag ‘0.0.1‘ //版本号 

git push --tags //提交标签

 

技术分享

5.验证podspec文件:

<style>p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 16.0px "Helvetica Neue"; color: #2f2f2f } span.s1 { } span.s2 { font: 12.0px Menlo; color: #657b83; background-color: #f6f6f6 } span.s3 { background-color: #ffffff }</style>

编辑完podspec文件后需要验证一下这个文件是否可用podspec文件不允许有任何的Warning或者Error

<style>p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 16.0px "Helvetica Neue"; color: #2f2f2f } span.s1 { }</style>

执行命令

<style>p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px "Helvetica Neue"; color: #454545 }</style>

pod spec lint iOS_PSCategory.podspec --verbose

 

技术分享

 

注意:  任何的警告、错误都是不能被添加到Spec Repo中

 

<style>p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px "Helvetica Neue"; color: #454545 } p.p2 { margin: 0.0px 0.0px 2.0px 0.0px; font: 14.0px ".PingFang SC"; color: #454545 } span.s1 { font: 12.0px ".PingFang SC" } span.s2 { font: 14.0px "Helvetica Neue" }</style> <style>p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px "Helvetica Neue"; color: #454545; min-height: 14.0px } p.p2 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px "Helvetica Neue"; color: #454545 } p.p3 { margin: 0.0px 0.0px 2.0px 0.0px; font: 14.0px ".PingFang SC"; color: #454545 } span.s1 { font: 12.0px ".PingFang SC" } span.s2 { font: 14.0px "Helvetica Neue" }</style>

 

6. 通过Trunk推送给Cocoapods服务器:

 

首先向trunk服务器查询自己的注册信息

pod trunk me

 

存在Trunk账号截图

技术分享

 

没有注册Trunk的话,注册一个账号即可:

 

<style>p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px "Helvetica Neue"; color: #454545 } span.s1 { font: 12.0px ".PingFang SC" }</style>

pod trunk register 邮箱全称 ‘用户名‘ --verbose

 

7.最后通过终端push对应的podspec,完成开源项目支持Cocoapods下载的最后一步

 

pod trunk push 工程名字.podspec

 

<style>p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 16.0px "Helvetica Neue"; color: #333333; background-color: #ffffff } span.s1 { }</style>

成功的结果截图:

 

技术分享

 

8.搜索pod库, 这时就可以搜索自己刚提交过的开源文件

 

pod search iOS_PSCategory

 

注意点:

 

可能出现的错误:

http://www.itstrike.cn/Question/799c4add-42e1-4641-8641-27a4a16a1236.html

 

更加详细请参考这篇博客:

https://juejin.im/entry/57982040d342d3005908b63e

 

 

<style>p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 16.0px "Helvetica Neue"; color: #2f2f2f } span.s1 { }</style> <style>p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 16.0px "Helvetica Neue"; color: #2f2f2f } span.s1 { }</style> <style>p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 16.0px "Helvetica Neue"; color: #2f2f2f } span.s1 { }</style> <style>p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px ".PingFang SC"; color: #454545 } span.s1 { font: 12.0px "Helvetica Neue" }</style> <style>p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 13.3px "Helvetica Neue"; color: #333333; background-color: #ffffff } span.s1 { }</style> <style>p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 16.0px "Helvetica Neue"; color: #333333; background-color: #ffffff } p.p2 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Menlo; color: #333333; background-color: #f8f8f8 } span.s1 { } span.s2 { font: 12.0px Menlo; color: #4e5980; background-color: #f8f8f8 } span.s3 { color: #000080 }</style> <style>p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 16.0px "Helvetica Neue"; color: #333333; background-color: #ffffff } span.s1 { } span.s2 { font: 12.0px Menlo; color: #4e5980; background-color: #f8f8f8 }</style> <style>p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px ".PingFang SC"; color: #454545 } p.p2 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px "Helvetica Neue"; color: #454545 } span.s1 { font: 12.0px "Helvetica Neue" } span.s2 { font: 12.0px ".PingFang SC" }</style> <style>p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 16.0px "Helvetica Neue"; color: #333333; background-color: #ffffff } span.s1 { }</style> <style>p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 13.3px "Helvetica Neue"; color: #333333; background-color: #ffffff } span.s1 { }</style> <style>p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px "Helvetica Neue"; color: #454545 }</style>

创建podspec文件,为自己的项目添加pod支持