iOS开发 制作 并 发布自己的CocoaPods库

1.将要发布的库,以及库所在的工程上传到GitHub上去。

首先,我们需要确认下自己即将上传的库,在未来的一段时间内,是不会在修改的了(固定版本)。然后打上标签tag,这个tag在下面制作pod库的时候会用来区分pod库的版本,也是为了方便后续更新自己的pod库。具体终端操作命令如下:

cd 工程所在的本地文件目录    

git clone 工程的GitHub地址    

#在这里把GitHub上的项目克隆的本地,并把要上传的文件放到克隆下来的文件夹里,进行上传

git tag    #查看本地的tag,默认git远端和本地都不存在git的,在这里给当前的git打上一个tag 

git tag 0.0.1    #将当前的版本,打上tag为0.0.1标志

git add *

git commit -m初始化工程

git pull origin master    #上传之前先更新

git push origin master    #上传到master分支上

git push origin --tags    #将本地tag推送到远端

到这,前期准备工作完成。这里给出一篇介绍git分支和tag用法的博客,仅供参考。

2.创建*.podspec文件,设置库的相关属性。

<1>检测当前的CocoaPods版本

pod --version    #如果版本低于0.33是无法发布自己的库的

<2>检测是否注册了CocoaPods平台

pod trunk me    #查看自己的注册信息

如果没有注册,需要执行以下命令,在该平台上进行注册。

#参数分别为邮箱和用户名,加上--verbose可以输出详细错误信息,方便出错时查看。

pod trunk register [email protected] 'ox-man'  --verbose

<3>创建并编辑*.podspec文件

pod spec create WTAudioPlayer    #创建*.podspec文件,WTAudioPlayer是库名

使用Sublime(其他的如Xcode,文本编辑器都是可以的)对该文件进行编辑。具体如下:

Pod::Spec.new do |s|

s.name        = "WTAudioPlayer"

s.version    = "0.0.2"

s.platform = :ios, "8.0"

s.summary    = "~~iOS~~边下边播~~音频播放器~~"

s.homepage    = "https://github.com/ox-man"

s.author    = { "ox-man" => "[email protected]" }

s.source      = { :git => "https://github.com/ox-man/WTAudioPlayer.git",:tag => s.version.to_s}

s.source_files = "WTPlayer/MusicPlayer/*.{h,m}"

s.license    = { :type => "MIT", :file => "LICENSE" }

s.requires_arc = true

s.dependency "KTVHTTPCache"

s.dependency "YYCategories"

end

这里遇到了两个比较常见的坑:

a.文件里s.source_files的路径总是设置错误,这里说一下这个规则,比如A是要发布的库所在的文件夹(源文件),B是*.podspec文件,他们都在C文件夹里,且处于同一级目录。那么s.souce_files就应该设置成

s.source_files = "C/A/*.{h,m}"

b.文件里s.dependency语法出错,当时试过了好几种语法,最后

s.dependency "KTVHTTPCache"

s.dependency "YYCategories"

这个语法是有效的。

其他的介绍,请参考这篇博客。

3.检测*.podspec里面的设置是否合理。

pod spec lint IFMMenu.podspec --allow-warnings    #忽略警告的,检查配置是否合理

具体结果看终端信息,如果出错,请自行解决。

4.将自己的库发布到CocoaPods平台上,供其他开发者使用。

pod trunk push *.podspec  --allow-warnings  #发布命令,具体结果看终端显示

5.检测自己的库是否发布到CocoaPods平台上成功

pod search 你的库名

如果搜索不到,先更新下本地pod库,然后再搜索。

或者使用

pod trunk me

查看自己的名下是否有刚发布的pod库。

到此,记录完毕,欢迎讨论,谢谢。

你可能感兴趣的:(iOS开发 制作 并 发布自己的CocoaPods库)