iOS CocoaPods安装和使用

转载自:

https://blog.csdn.net/jiankeufo/article/details/79362660

版权声明:本文为博主原创文章,未经博主允许不得转载。    https://blog.csdn.net/qq_18505715/article/details/51075188
一、概述

CocoaPods是OS X和iOS下的一个第三类库管理工具,通过CocoaPods工具我们可以为项目添加被称为“Pods”的依赖库(这些类库必须是CocoaPods本身所支持的),并且可以轻松管理其版本。

Cocoapods意义体现在两个方面。 
第一,在引入第三方库时它可以自动为我们完成各种各样的配置,包括配置编译阶段、连接器选项、甚至是ARC环境下的-fno-objc-arc配置等。 
第二,使用CocoaPods可以很方便地查找新的第三方库,这些类库是比较“标准的”,而不是网上随便找到的,这样可以让我们找到真正好用的类库。

二、安装流程

1、安装ruby环境 
要使用CocoaPods,那就要下载安装它,而下载安装CocoaPods需要Ruby环境,而Mac OS本身自带Ruby。建议更新下ruby。

终端输入如下命令

//删除原来的ruby源
gem sources --remove https://rubygems.org/
//添加你找到的可用的镜像源
gem sources -a http://rubygems-china.oss.aliyuncs.com
//查看是否切换成功
gem source -l
1
2
3
4
5
6
2、安装 cocoapods

继续在终端输入下面命令行

sudo gem install cocoapods
1
后需要输入密码(这个密码为你电脑用户密码),输入后直接回车即可。稍等一会,终端就会继续输出(类似这样的东西,我这个是第二次安装,为了演示)

Successfully installed cocoapods-0.39.0
Parsing documentation for cocoapods-0.39.0
1 gem installed
1
2
3
这样cocoapods就算安装成功了。

三、关于cocoapods的一些使用

1、使用search 命令行搜索类库名(类库需要支持cocoapods),例如搜索 AFNetWorking

pod search AFNetWorking
1
当你第一次安装cocoapods ,使用search命令行搜索类库名,打完改命令行后会出现 下面这个

Setting up CocoaPods master repo
1
别慌,不是安装失败,也不是命令行有错误, 原因是第一次使用pod明令会进行一次初始化,Setting up CocoaPods master repo这行文字显示出来之后要等好久,不过也就第一次会出现,以后都还好。(10分钟左右吧) 之后就会把AFNetWorking响应的信息展示出来。我这边只截 最新的,如下:

-> AFNetworking (3.1.0)
   A delightful iOS and OS X networking framework.
   pod 'AFNetworking', '~> 3.1.0'
   - Homepage: https://github.com/AFNetworking/AFNetworking
   - Source:   https://github.com/AFNetworking/AFNetworking.git
   - Versions: 3.1.0, 3.0.4, 3.0.3, 3.0.2, 3.0.1, 3.0.0, 3.0.0-beta.3,
   3.0.0-beta.2, 3.0.0-beta.1, 2.6.3, 2.6.2, 2.6.1, 2.6.0, 2.5.4, 2.5.3, 2.5.2,
   2.5.1, 2.5.0, 2.4.1, 2.4.0, 2.3.1, 2.3.0, 2.2.4, 2.2.3, 2.2.2, 2.2.1, 2.2.0,
   2.1.0, 2.0.3, 2.0.2, 2.0.1, 2.0.0, 2.0.0-RC3, 2.0.0-RC2, 2.0.0-RC1, 1.3.4,
   1.3.3, 1.3.2, 1.3.1, 1.3.0, 1.2.1, 1.2.0, 1.1.0, 1.0.1, 1.0, 1.0RC3, 1.0RC2,
   1.0RC1, 0.10.1, 0.10.0, 0.9.2, 0.9.1, 0.9.0, 0.7.0, 0.5.1 [master repo]
   - Subspecs:
     - AFNetworking/Serialization (3.1.0)
     - AFNetworking/Security (3.1.0)
     - AFNetworking/Reachability (3.1.0)
     - AFNetworking/NSURLSession (3.1.0)
     - AFNetworking/UIKit (3.1.0)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2、将AFN 导入我们的工程(继续在终端上操作)

2.1 cd 到项目总目录(可以cd+空格+将项目直接拖动到终端命令行里面自动显示项目路径)

cd /Users/cherish/Desktop/coco 
1
2.2 建立Podfile(配置文件) 
继续在终端输入

touch  Podfile
1
这样Podfile 文件就算建立完成。

打开工程的podfile文件,输入

platform :ios, ‘8.0’

target ‘你的项目名称’ do

pod ‘AFNetworking’, ‘~> 3.0’

end

2.3 下载对应的第三方库(AFNetWorking)到工程里面

继续在终端输入如下

pod install
1
2
紧接着出现,正在更新本地的pod仓库

Updating local specs repositories
1
继续等待,知道出现如下:

Analyzing dependencies
Downloading dependencies
Installing AFNetworking (3.1.0)
Generating Pods project
Integrating client project

[!] Please close any current Xcode sessions and use `coco.xcworkspace` for this project from now on.
1
2
3
4
5
6
7
显示安装完成,Please close any current Xcode sessions and use coco.xcworkspace for this project from now on. 这句话的意思是,之后用coco.xcworkspace这个工程。(也就是说,左边被替换成右边。) 
 –>  è¿éåå¾çæè¿°è¿éåå¾çæè¿°

3、 如何批量安装 第三方库

打开工程里面已经建好的Podfile文件 
 è¿éåå¾çæè¿°
例如要添加JSONKit 这个第三方库,就继续在Podfile继续添加如下,保存关闭

platform:ios,'9.0'
pod 'AFNetworking', '~> 3.1.0’
pod 'GCJSONKit', '~> 1.5.0'
1
2
3
然后到终端 cd 总目录,执行pod install 即可。(更新也是如此:【1】先搜索对应类库最新版本号【2】然后修改配置文件并保存【3】终端执行pod install 命令)

备注: 在Podfile文件中,如果是以下这样保存,表示不显式指定依赖库版本,表示每次都获取最新版本

platform:ios
pod 'AFNetworking'
pod 'GCJSONKit'
1
2
3
4、如何移除第三方 
打开Podfile文件,删除选中的第三方,打开终端 cd 到当前项目目录下,重新执行pod install命令。

四、关于cocoapods一些补充

1、关于cocoapods报错 
CocoaPods报错:The dependency “ is not used in any concrete target

报错原因 : podfile升级之后到最新版本,pod里的内容必须明确指出所用第三方库的target,否则会出现The dependency “ is not used in any concrete target这样的错误。

解决方法: 在podFile文件指明Target即可。 
例如在podFile文件书写如下,此后重新执行 pod insatll。

platform :ios, ‘7.0‘
target "项目名" do
pod ‘ReactiveCocoa‘, ‘2.1.8‘
pod ‘objectiveflickr‘, ‘2.0.4‘
pod ‘LinqToObjectiveC‘, ‘2.0.0‘
pod ‘SDWebImage‘, ‘3.6‘
end
1
2
3
4
5
6
7
2、关于 pod install/pod update更新慢的问题

原 因: 无论是执行pod install还是pod update都卡在了Analyzing dependencies不动原因在于当执行以上两个命令的时候会升级CocoaPods的spec仓库。

解决方法: 
pod install –verbose –no-repo-update 
pod update –verbose –no-repo-update

//参考链接 
www.cnblogs.com/yan520/p/5583362.html

猜你喜欢

转载自blog.csdn.net/parasoft/article/details/84301987