zoukankan      html  css  js  c++  java
  • 安装和使用cocoaPods

    一、cocoaPods是什么?

    在iOS开发中。我们一定会常常使用到各种各样的第三方开源库,使用这些开源库的时候,须要引入源代码、进行设置、引入其它framework,还有版本号的更新.....这些工作没有技术含量并且复杂。这个时候。你要是用了cocoaPods,仅仅须要将用到的第三方开源库放到一个名为Podfile的文件里,然后运行pod-install命令,它就会帮你搞定这些无聊的事情。

    cocoaPods是一个iOS的类库管理工具,绝大多数经常使用有名的开源类库都支持用cocoaPods下载管理。


    二、安装cocoaPods

    1、mac下安装ruby环境

    /*传送门:https://ruby-china.org/wiki/install_ruby_guide,一路跟着做下来,很顺畅。

    另外一篇參考的,我做了一半rvm地址用不了了。你能够试试:

    http://www.hoowolf.net/2012/03/29/installing-ruby-on-rails-on-mac-os-x-lion/*/

    唐巧大神的文章中得知。mac下自带ruby环境,不须要安装。以上内容凝视掉。

    2、安装cocoaPods

    继续在终端输入:"sudo gem install cocoaPods "


    三、使用cocoaPods

    1、利用cocoaPods,在项目中导入SDWebImage

    (1)使用:“pod search SDWebImage”确定SDWebImage是否支持cocoaPods

    (2)A.从终端cd进入你要引入SDWebImage的那个project文件夹(与project文件.xcodeproj同级文件夹)

            B.输入命令“vim Podfile”,创建Podfile文件。进入普通编辑模式。(文件名称必须为Podfile)

            C.在文件里输入:(假设一个第三方库支持cocoaPods,那它的github页面上就有类似的配置内容)

    platform :ios(, '6.1')
    pod 'SDWebImage'(, '~>3.6')
    类似地。假设要导入其它第三方
    pod 'ASIHTTPRequest'
    ....

    以上配置信息大意为,括号中的内容可有可无,支持平台iOS,最低6.1。下载SDWebImage版本号3.6。

    按esc退出编辑状态,输入“:x”运行保存并退出vim的命令。

    这个时候。在你的project文件.xcodeproj的同等级文件夹上会生成一个podfile文件

    (3)运行“pod install”命令,将SDWebImage下载到project里,而且设置好了编译參数和依赖。

    (4)从此以后,使用*.xcworkspace文件来打开project,而不是曾经的*.xcodeproj。

             每次更改了Podfile文件,都须要又一次运行一次"pod update"命令。"pod update"默认会更新到第三方的最新版本号。假设不想更新到最新版本号,使用"pod update --no-repo-update"命令。


    2、利用cocoaPods下载第三方类库所须要的其它库

    假设你下载了某个第三方源代码之后,编译的时候出现了缺少各种各样文件的错误,而且在project的根文件夹下发现了Podfile、Podfile.lock和Pod这些文件。那就说明那些缺少的文件你没有更新下来。

    解决的方法:打开终端进入与Podfile同级的文件夹,运行"pod update"命令。


    四、其它注意

    1、关于.gitignorePodfile.lock

    当运行完pod install,除了生成Podfile,还生成一个Podfile.lock文件。Podfile.lock会锁定当前各依赖库的版本号。之后运行pod update都会对Podfile.lock做改动。

    所以不能把Podfile.lock增加.gitignore文件里。

    2、cocoaPods的原理

    cocoaPods将全部依赖库都放着到一个名为Pods的项目中,让主项目依赖Pods项目,从而将源代码管理工作从主项目中移到了Pods项目中。

    A.Pods项目终于编译成一个名为libPods.a的文件,主项目依赖这个.a文件。

    B.Pods里面有一个名为Pods-resource.sh的bash脚本,每次项目编译的时候都会运行,将第三方的各种资源文件拷贝到目标文件夹中。

    C.Pods中的.xcconfig文件是用来在编译时设置依赖和參数的。




  • 相关阅读:
    JavaEE基础(01):Servlet实现方式,生命周期执行过程
    Spring 框架基础(06):Mvc架构模式简介,执行流程详解
    Spring 框架基础(05):事务管理机制,和实现方式
    多线程搜索与排序
    mybatis的Mapper代理原理
    spring的RestTemplate使用指南
    探索CAS无锁技术
    两年Java的面试经验
    HashMap多线程并发的问题
    解析Mybaits的insert方法返回数字-2147482646的原因
  • 原文地址:https://www.cnblogs.com/mengfanrong/p/5058037.html
Copyright © 2011-2022 走看看