CocoaPods

作者: 平平无奇DeBug | 来源:发表于2016-08-10 01:03 被阅读15次

    配置Ruby环境

    • 查看当前ruby环境
    gem sources -l
    
    • 如果当前环境为https://rubygems.org/,则先删除该环境,执行
    gem sources --remove https://rubygems.org/
    

    添加国内源,执行

    gem source -a https://gems.ruby-china.org (推荐使用)
    gem sources -a https://ruby.taobao.org/ (淘宝源不维护了,不建议使用)
    
    • 再次查看环境gem sources -l,显示为https://ruby.taobao.org/,则接下来就可以开始安装CocoaPods

    安装CocoaPods

    • 安装CocoaPods,执行
    sudo gem install cocoapods
    
    • 如果出现
    ERROR:  Error installing cocoapods:
      activesupport requires Ruby version >= 2.2.2.
    

    说明 ruby环境 需要升级到2.2.2版本以上,而目前使用的 ruby版本是mac系统自带的1.8.7,所以需要对 ruby升级。可执行

    brew install ruby
    

    对ruby升级,但前提要先安装HomeBrew

    安装 HomeBrew
    /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
    

    详情可看这里HomeBrew

    • Ruby 升级后,再次执行sudo gem install cocoa pods以及pod setup

    注:
    pod setup的作用:将所有第三方的Podspec索引文件更新到本地的~/.cocoapods/repos目录下。即使在安装时不执行此命令,在初次执行pod install 命令时,系统也会自动执行 pod setup
    我们需要把这个Podspec文件保存到本地,这样才能让我们使用命令pod search 开源库搜索一个开源库,怎样才能把github上的Podspec文件保存本地呢?那就是 pod setup

    并且在执行pod setup命令时,会出现:
    Setting up CocoaPods master repo
    说明Cocoapods在将它的信息下载到 ~/.cocoapods里
    可 cd  ~/.cocoapods
    使用 du -sh * 来每隔几分钟查看文件大小。该文件很大,并且以后会越来越大,耐心等待。
    
    屏幕快照 2016-08-11 上午12.27.23.png
    • 安装完成执行pod --version查询是否安装成功,install成功会显示pod的版本。
    • CocoaPods如果需要更新,可执行sudo gem update cocoa pods,更新至最新版本。iOS 10.11 升级CocoaPods会出现问题,详细解答可参考解决OS X 10.11之后CocoaPods的升级问题中的方案。

    使用CocoaPods导入第三方库

    • 搜索第三方库,以SDWebImage为例,该第三方库需要支持CocoaPods
    pod search SDWebImage ,搜索结果为SDWebImage的版本信息。
    cd 项目目录
    touch Podfile  / pod init  创建一个 Podfile 文件
    

    打开 Podfile ,编辑内容。

    注:使用Xcode打开,或者在终端使用vim编辑Podfile,否则会报一下错误:[!] Your Podfile has had smart quotes sanitised. To avoid issues in the future, you should not use TextEdit for editing it. If you are not using TextEdit, you should turn off smart quotes in your editor of choice.

    Podfile 内容:

    platform :ios, ‘8.0’      指定开源库被编译在哪个平台以及平台的最低版本
    inhibit_all_warnings!     屏蔽cocoapods库里面的所有警告
    
    xcodeproj 'TestProject'   xcodeproj,现在被project代替,这个变量就别使用了
    
    workspace 'TestProject'   指定应该包含所有projects的Xcode workspace.
    use_frameworks!           使用frameworks动态库替换静态库链接
    
    target 'TestProject' do   指定特定Target的依赖库
      pod 'AFNetworking'
      pod 'SDWebImage'
      pod 'MJRefresh'
    end
    

    Podfile编辑完成后,执行pod install加载第三方库。

    注:无论是执行pod install还是pod update, 如果都卡在了Analyzing dependencies不动, 原因在于当执行以上两个命令的时候会升级CocoaPods的spec仓库, 加一个参数可以省略这一步, 命令如下:
    pod install --verbose --no-repo-update

    pod update --verbose --no-repo-update

    相关文章

      网友评论

          本文标题:CocoaPods

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