让你的框架支持CocoaPods

作者: devchena | 来源:发表于2016-04-21 16:14 被阅读106次

    最近在研究如何在github上创建公有库,上传代码后可以用CocoaPods引入到工程中。走过了不少坑,但功夫不负有心人,终于从坑里爬出来了。
    文笔不好,综合了别人的技术文章,自己在添油加醋,草草的总了下操作步骤,如有问题请提出来。

    下面的步骤做出来的参考:https://github.com/devchena/ColorImageUtils

    步骤

    1.上传代码到指定github
    2.创建 .podspec 文件
    3.在github上创建release版本
    4.注册CocoaPods账号
    5.上传项目代码到CocoaPods
    6.检查是否上传成功
    7.更新框架版本


    1.上传代码到指定github


    个人使用Github Desktop客户端具体操作步骤),其他方式请Google,这里不多介绍。(不介绍的原因是我不会 >=<)

    在github下载支持CocoaPods的代码,都会有.podspecLicense.gitignore(该文件为隐藏文件),但是通过Github Desktop客户端push上去的是没有License和.gitignore这两个文件的。肿么办?我们可以copy两个这样的文件到自己的工作目录,然后上传到github。

    copy后放到项目路径下:


    添加License和.gitignore

    上传到github:


    2.创建 .podspec 文件

    打开终端进入项目的根目录,终端输入命令

    pod spec create specName
    

    来创建(specName即为你的.podspec文件名)

    创建成功后可以选择Xcode打开该文件,去掉多余的注释,按照个人需求编辑完后我的ColorImageUtils.podspec文件如下:

    ColorImageUtils.podspec

    顺便贴下本地文件路径作参考:

    CocoaPods引出的文件

    以及主要字段含义:



    3.在github上创建release版本

    编辑tag,创建release版本

    点进去后填上版本号、标题和简单的描述,点击Pulish Realise成功即可。

    注意:版本号必须与.podspec文件中的s.version相同


    4.注册CocoaPods账号

    打开终端,在终端中输入如下命令

    pod trunk register 邮箱地址 '用户名' --description='描述信息'
    

    然后根据终端显示信息,如果成功的话会提示让你去邮箱里确认进行激活

    输入如下命令可查看个人cocoapods账号信息

    pod trunk me
    

    5.上传代码到CocoaPods并检查是否上传成功

    上传代码到github前,需要验证.podspec文件内容格式是否有效,终端命令如下:

    pod spec lint
    

    注意:终端命令pod spec lint要在.podspec文件目录下执行(这是个坑)

    如果文件通过验证,终端会有如下提示:

    没有通过的话,终端会给你展示错误信息和警告。有错误的话请解决掉,否则不能上传。但是如果有不影响上传的警号的话,可以在终端命令“pod trunk push specName.podspec”后加上"--allow-warnings",下面有介绍。

    接着,我们可以把我们的开源项目push到github仓库上了,终端命令如下:

    pod trunk push specName.podspec --allow-warnings
    
    

    1.specName.podspec就是配置的.podspec文件全名。如果你不在.podspec文件目录下执行上面的终端命令的话,也可以指定podspec文件的绝对路径。
    2.上面终端命令里使用了"--allow-warnings",为忽略警告的意思。如果在pod spec lint时终端报出了警号,但是在pod trunk push时不加"--allow-warnings"的话上传是不会成功的。

    上传成功后终端提示如下:(我上传时没有加"--allow-warnings",因为.podspec文件验证时没有警告)

    pod trunk push specName.podspec

    6.检查是否上传成功

    终端执行命令搜索:

    pod search ColorImageUtils
    

    “ColorImageUtils“即为.podspec文件前缀名,如果成功的话,终端提示如下信息:

    上传成功

    建个项目用CocoaPods引入下试试:

    pod 'ColorImageUtils', '~> 1.0.0'
    

    7.更新框架版本

    如果需要更新框架新版的话,只需要在github上创建新的release版本(注意:版本号与podspec文件的s.version保持一致),在此执行终端命令即可

    pod trunk push specName.podspec --allow-warnings
    
    

    本文只做一个学习参考,内容和其他技术文章有很多出入(绝对非copy)。对于上传复杂些的框架,还没有做过尝试,后期有实践的话将会补充。

    参考文章

    http://www.cocoachina.com/ios/20150228/11206.html
    http://www.jianshu.com/p/f332b2c53280#

    相关文章

      网友评论

        本文标题:让你的框架支持CocoaPods

        本文链接:https://www.haomeiwen.com/subject/eswzlttx.html