代码管理| 简易教程之Cocopods的安装和使用

CocoaPods是一个用Ruby写的、负责管理iOS项目中第三方开源库的工具该项目源码在Github上管理。开发iOS项目不可避免地要使用第三方开源库,CocoaPods的出现使得我们可以节省设置和第三方开源库的时间。在使用CocoaPods后,我们只需要把用到的开源库放到一个名为Podfile的文件中,然后执行pod install。Cocoapods就会自动将这些第三方开源库的源码下载下来,并且为我们的工程设置好响应的系统依赖和编译参数。

CocoaPods原理。

CocoaPods的工作主要是通过ProjectName.xcworkspace来组织的,在打开ProjectName.xcworkspace文件后,发现Xcode会多出一个Pods工程。

1.库文件引入及配置:

库文件的引入主要由Pods工程中的Pods-ProjectName-frameworks.sh脚本负责,
在每次编译的时候,该脚本会帮你把预引入的所有三方库文件打包的成ProjectName.a静态库文件,
放在我们原Xcode工程中Framework文件夹下,供工程使用。

2.Resource文件:

Resource资源文件主要由Pods工程中的Pods-ProjectName-resources.sh脚本负责,在每次编译的时候,
该脚本会帮你将所有三方库的Resource文件copy到目标目录中。

3.依赖参数设置:

在Pods工程中的的每个库文件都有一个相应的SDKName.xcconfig,在编译时,CocoaPods就是通过这些文件来设置所有的依赖参数的,
编译后,在主工程的Pods文件夹下会生成两个配置文件,
Pods-ProjectName.debug.xcconfig、Pods-ProjectName.release.xcconfig。

Cocoapods 的安装

在安装之前,先检查本地是否已经安装好了Cocopods,如果安装好了就不用再安装了,终端输入 pod,如果出现下面图1的命令就是已经安装。

如果没有安装就需要先安装Cocoapods

1.首先更新gem(Gem 是一个管理 Ruby 库和程序的标准包)到最新版本,在终端中输入:

 sudo gem update --system

2.删除自带的ruby镜像,终端输入:

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

3.添加ruby-china的镜像,终端输入:

gem sources -a https://gems.ruby-china.com/   
(原来的淘宝镜像https://ruby.taobao.org/也可以使用)。

4.可以用 gem sources -l 来检查使用替换镜像位置成功,
结果应该只有https://gems.ruby-china.com/ 或者https://ruby.taobao.org/才对。

5.安装CocoaPods,终端输入:

10.11之前
    $ sudo gem install cocoapods
10.11之后
    $ sudo gem install -n /usr/local/bin cocoapods

安装完后可在终端输入 pod ,会有如下输出:

图1

显示了 pod 的所有可用的命令和命令选项。(如果你的电脑没有安装,pod后就出现上面这图,说明以前就安装好了,可直接使用)

Cocoapods 的使用

打开终端,切换到你的工程目录,输入下面的命令

  pod init

此时你的工程目录下会出现一个待编辑的podfile文件:


podfle.lock是编辑过 podfile文件后会生成的

podfle.lock是编辑过 podfile文件后会生成的,不用管它。

编辑podfile文件:vi 后直接拖动工程类目下的 podfile文件到终端中即可得到对于的路径

 vi /Users/iOS002/Desktop/MyNewTest/Podfile 

输入你想集成的类库名称后,先按 esc 键,再输入 :wq! 即可保存编辑内容并退出。
编写好 Podfile 后执行以下命令:

pod install

这样即可集成目标类库了。

  #import "ViewController.h"
  #import <MBProgressHUD.h>
  @interface ViewController ()
  @end

@implementation ViewController
- (void)viewDidLoad {
    [super viewDidLoad];
    
   [MBProgressHUD showHUDAddedTo:self.view animated:YES];
 }

使用的时候导入即可,使用<>而不是""


不错的文章:https://www.jianshu.com/p/1711e131987d

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一.CocoaPods是什么? CocoaPods是一个用Ruby写的、负责管理iOS项目中第三方开源库的工具,C...
    王小祺阅读 737评论 1 0
  • CocoaPods 是什么? CocoaPods 是一个负责管理 iOS 项目中第三方开源库的工具。CocoaPo...
    朝洋阅读 25,745评论 3 50
  • 成长还真是有点痛苦的。
    ring刘萍萍阅读 145评论 0 0
  • 今天上午, 学校开展了我的游戏我作主活动。我玩的非常开心! 今天我一进教室就发现了教室里的桌子被摆成了不同的形状。...
    明月照松间5518李安然阅读 312评论 1 0
  • 越看到结尾,越感到了落寂、悲情、孤独,或许这就是书中人物的真实。一个家族的命运随着羊皮纸的解读让这个家族的命运...
    无为无未阅读 171评论 0 0