CocoaPods-1.2.0安装及使用

CocoaPods是iOS项目的依赖管理工具,对于开发者来说, 可以快速集成第三方开源库和添加依赖库。随着Ruby、Gem、Mac OSX、Xcode和CocoaPods的更新,CocoaPods的安装方法也随着变化,当然也会产生各种这样的问题。
CocoaPods-1.2.0安装及使用_第1张图片
图片发自App

使用工具:
Mac OSX操作系统:OS X 10.12.2
编译环境:Xcode 8.2.1
Mac 终端

一. 搭建CocoaPods环境

**1. 打开Mac 终端 **
右上角搜索终端 或者 在Launchpad找到“其他”软件文件夹,找到终端打开。

搜索终端.png
CocoaPods-1.2.0安装及使用_第2张图片
终端.png

2. 更新ruby
替换Ruby的默认源,移除https://rubygems.org/,添加淘宝的https源
(把Ruby镜像指向taobao,避免被墙)

gem sources --remove https://rubygems.org/
gem sources -a https://ruby.taobao.org/ 

如果之前安装有http://ruby.taobao.org/,则需要移除http的淘宝源:
gem sources --remove http://ruby.taobao.org/
PS: 之前淘宝的是 http 的,现在要替换成 https 的.

// 删除旧源
gem sources --remove https://rubygems.org/
// 设置新源 ruby-china (需要最新的 ruby 中国)
gem source -a https://gems.ruby-china.com
CocoaPods-1.2.0安装及使用_第3张图片
替换移除添加.png

3. 验证是否成功替换Ruby的默认源

 gem sources -l
CocoaPods-1.2.0安装及使用_第4张图片
验证.png

4. 更新Mac 的Gem,Gem是管理Ruby库和程序的标准包

 sudo gem update --system 
或者(Mac OSX 10.11之后)
 sudo gem update -n /usr/local/bin —system

然后输入管理员权限密码(看不到输入结果的,输完密码之后直接回车)


CocoaPods-1.2.0安装及使用_第5张图片
更新.png

5. 完成安装CocoaPods

    sudo gem install cocoapods  
或者(Mac OSX 10.11之后)
    sudo gem install -n /usr/local/bin cocoapods
CocoaPods-1.2.0安装及使用_第6张图片
完成.png
CocoaPods-1.2.0安装及使用_第7张图片
完成安装.png

二. 为iOS项目添加CocoaPods管理库(使用)

1.新建一个项目ZLPodTest

CocoaPods-1.2.0安装及使用_第8张图片

2.找到项目文件路径
在终端输入cd+空格,然后拖动项目文件夹到终端,自动生成路径。

CocoaPods-1.2.0安装及使用_第9张图片

3. 创建并编辑Podfile文件(配置文件)
终端输入vim podfile 或者 pod init(推荐)

 pod init

编辑文件,没有文件就自动在当前目录添加一个文件再编辑。
键盘输入 i,进入编辑模式,输入内容:

platform :ios, '8.0'
target “target名称” do
pod 'AFNetworking', '~> 3.1.0'
end

按Esc退出编辑,然后按Shift +冒号,输入wq退出文件编辑。


CocoaPods-1.2.0安装及使用_第10张图片

注意:键盘输入 :后,才能输入wq。回车后发现ZLPodTest项目总目录中多一个podfile文件

4.为项目导入第三方库和相关依赖库
终端输入:

pod install

然后耐心等待下载第三方库,如果文件大,可能要花长时间, 稍微等待一会, 终端会打印进度的.


CocoaPods-1.2.0安装及使用_第11张图片

查看项目根目录:
PS:这个时候现在打开项目不是点击 ZLPodTest.xodeproj了,而是点击 ZLPodTest.xcworkspace

CocoaPods-1.2.0安装及使用_第12张图片

打开项目后看到项目结构且测试一下:


CocoaPods-1.2.0安装及使用_第13张图片

5. 后续需要同时导入多个第三方
CocoaPods的基本安装及使用都详细的说明了,但还有一些补充,当需要同时导入多个第三方时候怎么办 ?
这就需要修改Podfile了,就是用vim编辑的那个保存在项目根目录中的文件,手动修改完了Podfile文件,需要重新执行一次pod install命令。
例如:

platform :ios
target 'ZLPodTest' do
pod 'MBProgressHUD', '~> 0.9.2'
pod 'MJRefresh', '~> 3.1.0'
end

6. 后续更新第三方
如果之前已经down 过相关的, 更新命令如下:

pod update --no-repo-update 

三. 移除CocoaPods

  1. 编辑Podfile文件,清除里面所有库,然后终端输入:pod install。这时会清空第三方库和相关依赖库。
  2. 删除之前的4个文件,Podfile、Podfile.lock、Pods文件夹和.xcworkspace文件。
  3. 然后打开.xcodeproj,删除项目中的libpods.a和Pods.xcconfig引用。


    CocoaPods-1.2.0安装及使用_第14张图片

TARGETS - Build Phases 删除有关pods的选项,至此完成删除。


CocoaPods-1.2.0安装及使用_第15张图片

四. 常见问题

1.如果我们下载大神们的项目demo(使用了pod管理) 用来学习, 直接运行报错如下时:

diff: /../Podfile.lock: No such file or directory
diff: /Manifest.lock: No such file or directory
error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.

解决方案:
在终端里输入 cd+空格 拖入你所需的项目,
也就是说使用终端切换到项目目录,然后重新在终端输入:pod install
重新打开项目, clean + build项目,运行有奇迹呦!

2.在使用cocoapod导入Swift第三方时出现这样的问题:

[!] Pods written in Swift can only be integrated as frameworks; add `use_frameworks!` to your Podfile or target to opt into using it. 

安装oc的配置方法:

platform :ios, '8.0'
pod 'Alamofire', '~> 4.3.0'
end

苹果不允许建包含swift的静态库,不同于OC可以使用平台版本的语言版本。

解决方案:
针对Swift这种问题,可以增加这样的处理:use_frameworks!

platform :ios, '8.0'
pod 'Alamofire', '~> 4.3.0'
use_frameworks!
end

3.后续遇到其他问题,则陆续更新~

你可能感兴趣的:(CocoaPods-1.2.0安装及使用)