您的位置:首页 > 其它

给自己的库添加Cocoapods支持

2018-01-18 23:03 197 查看
在我们项目开发中一般会使用cocoapods来管理三方库,比如 AFNetworking、SDWebImage等。如果我们自己写了一个库抑或工具类,我们不想通过手动添加的方式在每个项目之间传递的话,可以考虑给这个库添加cocoapods支持。功夫不负有心人,在网上摸索了2天后,终于成功的给我写的类添加上了cocoapods支持。

大体步骤可分为以下几个步骤

1.通过git上传我们已经写好的库;

2.创建spec文件,并编辑;

3.注册spec文件并上传到cocoapods。

下面我将详细的说明每一个步骤:

1.通过git上传库

首选我们创建一个文件夹(temp)存放写好的库(MyLib)和示例工程(TestLib),当然MyLib要添加进示例工程中。

通过git上传MyLib和TestLib到github。

1.在github创建仓库:



2.打开终端通过git命令上传代码:

1.cd 到temp文件夹的更目录下;
2.git init (初始化本地仓库);
3.git add .  (将仓库添加到临时仓库,注意:"add"和"."之间有个空格);
4.git commit -m"描述信息" (添加描述信息);
5.git remote add origin github上仓库的地址(关联到远程仓库);
6.git push -f origin master(推送到远程仓库)。


执行完上诉命令后,在github上我们创建的仓库里就可以看到我们刚才提交的代码了。



2.创建spec文件

cd到temp的根目录下,在终端输入命令:

pod spec create MyLib(库的名称)


在temp文件夹下就创建了一个名称为MyLib.podspec的spec文件了。通过xcode打开spec文件编辑。

编辑spec文件(可以参考:cocoapds官方文档的规则)

我们只关心几个重要的属性即可

s.name         = "MyLib"  //库的名称
s.version      = "0.0.1"     //库的版本
s.summary      = "just test"  //库的摘要
s.description  = "这里的内容要比summary的要长,要不然会报警告"
s.homepage     = "https://github.com/RMHuang/Temp" //远程仓库的地址
s.author             = { "RMHuang" => "2282802627@qq.com" }
s.license      = "MIT"
s.platform     = :ios, "8.0" //这个属性一定要打开,库最低支持的版本
s.source       = { :git => "https://github.com/RMHuang/Temp.git", :tag => "#{s.version}" } //这里填入的地址是下载的地址,git结尾的
s.source_files  = "MyLib", "MyLib/**/*.{h,m}" //“**”这个通配符代表MyLib文件夹下的所有文件,"*.{h,m}"代表所有的.h,.m文件。


给MyLib打标签。

cd到temp的根目录下,在终端输入命令:

git tag '0.0.1' //标签
git push --tags  //推送到远程仓库


注册sepc并推送到远程仓库

使用trunk进行注册

cd到temp的根目录下,在终端输入命令:

pod trunk register 2282802627@qq.com 'HuangZhiHao' --verbose  //邮箱一定要填写正确,因为要通过邮箱验证


注册完成在终端会提示如下信息:



登录刚才填写的QQ邮箱,打开cocoapods发送给的邮件,复制其中的链接并在浏览器中访问。



如果出现下图界面,则说明注册成功:



再次回到终端在终端中输入以下命令进行推送:

pod trunk push MyLib.podspec --allow-warnings


这个过程稍微有点长,稍等即可。

如果发布成功会出现下面的界面:



这里有个小插曲,可以看到上面发布成功的是MyPersonLib,而不是MyLib,是因为我发布的时候,MyLib这个名称已经被别人占用了,不得已只好改为MyPerosnLib并把tag设定成了0.0.2,重新提交验证了一次

验证是否发布成功:



更新库版本(明天写)

写在最后,发布成功不一定就能搜索到自己发布的库,

1.此时首先更新本地的cocoapods库:

pod repo update


2.搜索的时候用下面的命令:

pod search 库的名称 --simple
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Cocoapods