CocosPods

也在项目中用过一些第三方框架,第三方库,然后就知道了CocoaPods.

CocoaPods是什么?

CocoaPods应该是iOS最常用最有名的类库管理工具.开发 iOS 项目不可避免地要使用第三方开源库,CocoaPods 的出现使得我们可以节省设置和更新第三方开源库的时间。CocoaPod

Cocoapods原理

Pods项目最终会编译成一个名为 libPods.a 的文件,主项目只需要依赖这个 .a 文件即可。
对于资源文件,CocoaPods 提供了一个名为 Pods-resources.sh的 bash脚本,该脚本在每次项目编译的时候都会执行,将第三方库的各种资源文件复制到目标目录中。
CocoaPods 通过一个名为 Pods.xcconfig 的文件来在编译时设置所有的依赖和参数。

安装CocoaPods

  1. 要先确保电脑本地是否有 Ruby环境,因为CocoaPods运行于 Ruby之上,默认情况下,Mac 是自带了 Ruby 环境的,可以通过命令行 ruby -v查看当前Ruby的版本。
    执行命令:
    $ ruby -v
    已经安装了Ruby开发环境,那么在终端(Terminal)中使用以下命令即可直接安装:
    $ sudo gem install cocoapods
    $ pod setup

  2. 安装过程中可能遇到的问题
    ①执行完install命令半天没反应
    这有可能是因为Ruby的默认源使用的是cocoapods.org,国内访问这个网址有时候会有问题,网上的一种解决方案是将远替换成淘宝的,替换方式如下:
    $ gem sources --remove https://rubygems.org/
    //等有反应之后再敲入以下命令
    $ gem sources -a https://ruby.taobao.org/
    要想验证是否替换成功了,可以执行:
    $ gem sources -l
    正常的输出是:


②gem版本过老
gem是管理Ruby库和程序的标准包,如果它的版本过低也可能导致安装失败,解决方案自然是升级gem,执行下述命令即可:
$ sudo gem update --system
③安装完成后,执行pod setup命令时报错:
这就是路径设置的问题,可以通过执行:
$ rvm use ruby-1.9.3-p448
最近遇到问题:
$ sudo gem install cocoapods

ERROR: While executing gem … (Errno::EPERM)
Operation not permitted - /usr/bin/xcodeproj
解决方法:https://github.com/CocoaPods/CocoaPods/issues/3692
$ mkdir -p $HOME/Software/ruby
$ export GEM_HOME=$HOME/Software/ruby
$ gem install cocoapods
[…]
1 gem installed
$ export PATH=$PATH:$HOME/Software/ruby/bin
$ pod --version
0.39.0
或者:
$ sudo gem install -n /usr/local/bin cocoapods
$ sudo xcode-select --switch /Applications/Xcode.app
最后记得要执行命令:
$ pod setup

  1. 升级CocoaPods
    升级很简单,再次执行安装命令即可:
    $ sudo gem install cocoapods

  2. 查看pod版本输入命令:
    $ pod --version

至此,你本地文件夹下就有一个cocoapod文件夹。
$ cd ~/.cocoapods

使用CocoaPods

  1. 创建一个项目,比如swift或者oc项目,然后在终端下打开文件夹:
    输入命令:
    $ touch Podfile
    $ vi Podfile
  2. 可以输入命令
    $ pod search ...来找到所需要的版本
  3. 在Podfile中输入

    注意:ios小写。一般设置为‘8.0’,这样就可以适配多个版本。
  4. 然后仍旧是在项目根目录下执行如下命令
    $ pod install
    现在,你的所有第三方库都已经下载完成并且设置好了编译参数和依赖,你只需要记住如下 2 点即可:
  • 使用 CocoaPods 生成的 .xcworkspace 文件来打开工程,而不是以前的 .xcodeproj 文件。
  • 每次更改了 Podfile 文件,你需要重新执行一次pod update命令。

参考http://cnbin.github.io/blog/2015/05/25/cocoapods-an-zhuang-he-shi-yong/
http://blog.devtang.com/2014/05/25/use-cocoapod-to-manage-ios-lib-dependency/index.html
深入理解CocoaPods:http://objccn.io/issue-6-4/

文章目录
  1. 1. CocoaPods是什么?
  2. 2. Cocoapods原理
  3. 3. 安装CocoaPods
  4. 4. 使用CocoaPods
本站总访问量 本站访客数人次 ,