【iOS开发】---- CocoaPods:管理Objective-c 程序中各种第三方开源库关联

       在我们的iOS程序中,经常会用到多个第三方的开源库,通常做法是去下载最新版本的开源库,然后拖拽到工程中。

      但是,第三方开源库的数量一旦比较多,版本的管理就非常的麻烦。有没有什么办法可以简化对第三方库的管理呢?有!在使用SDWebImage这个第三方库的时候,我在学习如何将进度展现时,看到有人提到用CocoaPods(http://cocoapods.org/,需翻墙) 来管理第三方开源库。

      CocoaPods是管理Objective-c 程序中各种第三方开源库关联非常棒的方式,只要安裝好 CocoaPods,在自己程序的根目录下建立一份 Podfile 文字,在里面说明要使用哪些套件, CocoaPods 就会帮忙你搞定所有套件的相依性。


那现在我们学习如何使用CocoaPods吧。


安装


CocoaPods 是一个 Ruby 的 Gem,所以只要在 Terminal 下达安裝的指令:


sudo gem install cocoapods
pod setup

如果你的Ruby环境不够新的话,可能要更新一下:

gem update --system


注:行代码的时候你可能会觉得没反应,这里是需要时间的,耐心等待一下吧。

       

       这样就安装好了,检查一下是否安装好了没,随便搜索一个第三方的开源库:

pod search SDWebImage
       结果如下图所示



      没有报错误或其他什么的,说明CocoaPods安装成功。

      好了,我们再看看怎么使用。


使用


      比如你想使用SDWebImage这个开源库,你可以用上图的命令:pod search SDWebImage来搜索当前有多少个SDWebImage的版本及每个版本的相关信息。然后选择你需要的版本,将其添加到Podfile文件中。

      将开源库添加到Podfile文件中有两种方法:

方法一(手动建Podfile文档):

  • 你在你工程的根目录下新建一个名为Podfile的文本文档;
  • 然后将上图中红色方框内的文字(pod 'SDWebImage', '~> 3.4')复制进去;
  • 保存,然后去掉文本文档的后缀名(有后缀会发生发错误,亲测)。
方法二(命令行建Podfile文档):
  • 首先定位到你工程的根目录去(因为文档要建在这里);
  • 然后编辑Podfile文档(Podfile存在则编辑,没有就会新建),将将上图中红色方框内的文字(pod 'SDWebImage', '~> 3.4')复制进去;
  • 保存。
      命令行如下所示:
cd '你的工程根目录'  #不要引号 ,打开你的根目录
vi Podfile #打开并开始编辑
      如下图所示:

       
       编辑完成之后按Esc键退出编辑,然后输入‘:wq’保存并退出。

       现在你可以在项目中安装依赖关系了:
pod install
Tips:如果你引用的库很大,不需要所有的文件,可以这样写:
pod 'Nimbus/Core' 

       安装成功以后,你的工程跟木下会产生一个这样的文件:

确保以后就用这个文件来打开你的工程就行了。

创建一个pod

    (摘自 CocoaPods官网:http://cocoapods.org

      有时CocoaPods没有你需要的pod资源,但是幸运的,你可以很容易的创建一个:
 pod spec create Peanut
 edit Peanut.podspec
 pod spec lint Peanut.podspec
      When you’re done, please create a ticket and upload the pod. You can also fork theCocoaPods specs GitHub repository and send a pull request. We really love contributions!


补充:
如何在cocoapods中使用更新的pod:
http://www.cnblogs.com/procoder/archive/2013/01/15/how-to-get-updated-version-of-pods-on-cocoapods.html


最近cocoapods的使用出现了一个异常,报如下提示:
Please, fix them up in the work tree, and then use 'git add/rm <file>'

as appropriate to mark resolution, or use 'git commit -a'.
解决办法在此: 点击打开链接


参考:http://tw.polydice.com/2012/07/04/cocoapods/
           http://cocoapods.org(官网,需翻墙)


  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值