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

想让自己封装的组件等支持pod,就要创建podspec文件

1、上传项目源码

详细请看:Github 简明教程

2、创建项目的podspec文件

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

pod spec create LSAlert

这时候本地就生成一个LSAlert.podspec文件
用编辑器打开.podspec文件 (我自己用Sublime Text)

删除不必要的注释(这里只简单介绍基本用法,所以只用到一部分必须得字段 更多字段请移步http://guides.cocoapods.org/syntax/podspec.html)



Pod::Spec.new do |s|

  

  s.name         = "LSAlert"
  s.version      = "1.0.0"
  s.summary      = "A custom UIAlertView."

  
  s.description  = <<-DESC 
                    这是一个自定义的UIAlertView,支持多按钮,无按钮,带图片的展示
                   DESC

  s.homepage     = "https://github.com/tianyc1019/LSAlert"
  

  s.license      = "MIT"
  

  s.author             = { "John_LS" => "tianyc1019@icloud.com" }
  

  # s.platform     = :ios
   s.platform     = :ios, "9.0"

 

  s.source       = { :git => "https://github.com/tianyc1019/LSAlert.git", :tag => "1.0.0" }


  

  s.source_files  = "LSAlert/**/*.{swift}"
  # s.exclude_files = "Classes/Exclude"

  

end


3、验证podspec文件

编辑完podspec文件后,先打个tag标记

创建tag

git tag '1.0.0'
git push --tags

删除tag

//查看tag
git tag
//删除一个指定的tag,并上传一个空tag到远程tag
git tag -d <tagname>
git push origin :refs/tags/<tagname>

然后再验证下podspec文件是否正确,podspec文件不允许有任何的Warning或者Error
执行命令,

pod lib lint
(也可以用pod lib lint --allow-warnings 来忽略警告)

如果出现

-> LSAlert (0.0.1)

LSAlert passed validation.

如果出现Error但是提示信息不足,可以添加--verbose 以获取更多错误信息

$ pod lib lint --verbose
4、使用pod trunk命令,把podspec文件推送到CocoaPod官方库

pod trunk 需要注册 请移步CocoaPod官网

注册trunk 需要cocoapod是版本在0.33以上
执行命令

pod trunk register tianyc1019@icloud.com 'tianyc1019'  --verbose

邮箱以及用户名请对号入座。用户名我使用的是Github上的用户名。--verbose参数是为了便于输出注册过程中的调试信息。执行上面的语句后,你的邮箱将会受到一封带有验证链接的邮件,如果没有请去垃圾箱找找,有可能被屏蔽了。点击邮件的链接就完成了trunk注册流程。使用下面的命令可以向trunk服务器查询自己的注册信息:

pod trunk me

如果你的pod是由多人维护的,你也可以添加其他维护者

pod trunk add-owner xxx@163.com

pod trunk 设置完毕后执行命令

$ pod trunk push LSAlert.podspec

可以使用--allow-warnings忽略警告

pod trunk push LSAlert.podspec  --allow-warnings

然后慢慢等着,有点慢

5、最后

如果一切顺利,先更新pod依赖库

pod setup
pod search LSAlert

就可以找到刚才的项目了 并且还有安装命令
pod 'LSAlert','~>0.0.1'

最后总结下操作步骤:

1.你的开源库发布之后,需要打上版本号tag,否则后续不能完成

2.注册pod trunk

pod trunk register xxx@xx'Your name' --description='macbook pro'

2.cd到项目目录下,创建podspec文件

pod spec createYourPodProjectName

3.修改podspec文件中的相关信息,这很重要,校验,不能有任何警告或错误

pod spec lint YourPodProjectName.podspec

4.发布到pod trunk

pod trunk pushYourPodProjectName.podspec

5.更新pod库

pod setup

podspec文件更新方法

有时你可能会遇到这种情况:执行pod trunk push操作后发现podspec文件的某个地方写错了,想更新一下。对于这种情况,我们可能会先尝试着在把podspec文件push一次。但是如果你的代码版本号没变(podspec里的version自然也没变)就会提示push失败,即使你更改了podspec的其他地方,pod也会认为这两个文件是同一个。 我目前为止找不到trunk的相关update接口,所以只能顺水推舟,更新源代码版本号(如:1.1.1->1.1.2),重新push version tag,然后再执行pod trunk push操作。

推荐阅读更多精彩内容