• 总结下cocopods的安装


    一:CocoaPods是什么?

          当你开发iOS应用时,会经常使用到很多第三方开源类库,比如JSONKit,AFNetWorking等等。可能某个类库又用到其他类库,所以要使用它,必须得另外下载其他类库,而其他类库又用到其他类库,“子子孙孙无穷尽也”,这也许是比较特殊的情况。总之小编的意思就是,手动一个个去下载所需类库十分麻烦。另外一种常见情况是,你项目中用到的类库有更新,你必须得重新下载新版本,重新加入到项目中,十分麻烦。如果能有什么工具能解决这些恼人的问题,那将“善莫大焉”。所以,你需要 CocoaPods。

    CocoaPods应该是iOS最常用最有名的类库管理工具了,上述两个烦人的问题,通过cocoaPods,只需要一行命令就可以完全解决,当然前提是你必须正确设置它。重要的是,绝大部分有名的开源类库,都支持CocoaPods。所以,作为iOS程序员的我们,掌握CocoaPods的使用是必不可少的基本技能了。

    二:CocoaPods安装和使用

        CocoaPods是iOS最常用的第三方类库管理工具,绝大部分有名的开源类库都支持CocoaPods。

        CocoaPods是用Ruby实现的,要想使用它首先需要有Ruby的环境。幸运的是OS X系统默认已经可以运行Ruby了,因此我们只需执行以下命令:

    sudo gem install -n /usr/local/bin cocoapods

    由于某些原因,执行时会出现下面的错误提示:

    ERROR:  Could not find a valid gem 'cocoapods' (>= 0), here is why:

              Unable to download data from https://rubygems.org/ - Errno::EPIPE: Broken pipe - SSL_connect (https://rubygems.org/latest_specs.4.8.gz)

    当你使用代理后如果还是很慢,可以用淘宝的RubyGems镜像来代替官方版本,执行以下命令:

    1、gem sources --remove https://rubygems.org/

    2、gem sources -a https://ruby.taobao.org/

    3、运行命令:gem sources -l 查看当前的Ruby镜像,如果显示是taobao.org就可以了

    4、安装cocosPod:执行 sudo gem install cocoa pods 输入管理员密码后安装。

    5、最后显示提示:gem installed 表示安装完成

    6、安装成功后,接着执行命令:pod setup  

    提示:Setting up CocoaPods master repo 

    7、如果Ruby环境不够新,可能需要更新以下:

    sudo gem update –system

    至此安装就完成了,我们可以尝试搜索一个第三方类库:

    pod search AFNetworking

    使用CocoaPods的第一步,是在当前项目下,新建一个Podfile文件:

    touch Podfile

    然后利用vim或者记事本等打开Podfile文件编辑,加入你想要使用的类库,格式如下:

    platform :ios

    pod 'Reachability', '3.1.0'

    platform:ios, '6.0'

    pod 'JSONKit','1.4'

    pod 'AFNetworking', '~> 2.3.1'

    如果是拷贝的别人的项目,或是一个很久没打开过的项目,可能需要先执行一下:

    pod update

    最后一步,执行命令:

    pod install

    注意:使用pod install导致终端提示:一直显示Updating local specs repositories

    更新安装 pod install --verbose --no-repo-update 代替pod install命令即可。

    pod update --verbose --no-repo-update 代替pod update命令即可。

     当终端出现类似下面的提示后,就代表成功了:

    [!] From now on use `HPLabraryProject.xcworkspace`.

    这个时候会看到项目文件夹下多了一个文件xxx.xcworkspace,以后要通过这个文件打开项目,老项目文件xxx.xcodeproj不再使用。

    注意事项1:

    pod setup命令执行后原理是将Spec项目复制到当前用户的.cocoapodsmaster目录下,以后的查找、安装使用都是基于该本地目录的.  也就是说如果我们项目较旧了,如果在使用cocospod进行pod search 或者pod install 的时候你会发现找到的第三方库还是比较旧的版本,并不是gitHub中最新的版本,那么如何能够pod search 到最新版本并安装pod install呢?就要现在你执行pod search 之前先跟新本地目录库 使用pod setup 命令.

    注意事项2:

    1,        上面的每一步都有可能出现问题,但大部分问题都是因为大局域网的原因,用一个网速稳定的境外VPN可破。

    2,         如果上面因为权限问题安装失败,必须每次都要删除

    rm -rf /Users/loginnanme/Library/Caches/CocoaPods/

    因为这个缓存中会存下你的github的东西,造成每次都调用上次权限问题的缓存。

    3,        关于Podfile文件编辑时,第三方库版本号的各种写法:

    pod ‘AFNetworking’      //不显式指定依赖库版本,表示每次都获取最新版本

    pod ‘AFNetworking’,  ‘2.0’     //只使用2.0版本

    pod ‘AFNetworking’, ‘>2.0′     //使用高于2.0的版本

    pod ‘AFNetworking’, ‘>=2.0′     //使用大于或等于2.0的版本

    pod ‘AFNetworking’, ‘<2.0′     //使用小于2.0的版本

    pod ‘AFNetworking’, ‘<=2.0′     //使用小于或等于2.0的版本

    pod ‘AFNetworking’, ‘~>0.1.2′     //使用大于等于0.1.2但小于0.2的版本,相当于>=0.1.2并且<0.2.0

    pod ‘AFNetworking’, ‘~>0.1′     //使用大于等于0.1但小于1.0的版本

    pod ‘AFNetworking’, ‘~>0′     //高于0的版本,写这个限制和什么都不写是一个效果,都表示使用最新版本

    pod操作指令:

  • 相关阅读:
    URLLoader和Loader的区别
    linux的文件permission需要设置,否则会使用as3的urlrequest失败
    基于单个xml的数据库
    require_once()
    AS3里只能让动画听下来,不能让声音停下来的问题
    AS3的百条常用知识收藏
    as3读取xml
    21个营销机构网站设计案例
    Web设计者和开发者必备的27个Chrome插件
    DEDE模块MVC框架基本说明,织梦CMSv5.7MVC开发框架
  • 原文地址:https://www.cnblogs.com/Free-Thinker/p/6023336.html
Copyright © 2020-2023  润新知