Carthage的使用方法,顺带CocoaPods

栏目: IOS · 发布时间: 6年前

内容简介:Carthage和CocoaPods都可以用来管理第三方框架。本文的目的是记录一下Carthage的使用方法,不过为了全面一点,也加上了CocoaPods。一、Carthage

Carthage和CocoaPods都可以用来管理第三方框架。

本文的目的是记录一下Carthage的使用方法,不过为了全面一点,也加上了CocoaPods。

一、Carthage

Carthage对项目无侵入性,管理的依赖只需编译一次,并且可以与CocoaPods并存。

注意:Carthage需要iOS 8+

1. 安装carthage

1.1 安装Homebrew

到下面这个网站安装Homebrew

https://brew.sh/index_zh-cn

或者直接在终端输入下面的指令

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

1.2 更新Homebrew到最新版本

$ brew update

1.3 安装Carthage

$ brew install carthage

1.4 查看Carthage版本号

查看版本的同时,也可以验证是否安装成功

$ carthage version

2. 使用carthage

2.1 终端cd到项目所在文件夹

2.2 创建Carthage文件Cartfile

$ touch cartfile

Carthage的使用方法,顺带CocoaPods

创建Cartfile

2.3 编辑Cartfile并保存(可以使用Sublime进行编辑)

例如导入Alamofire,就在文件中写入github "Alamofire/Alamofire" ~> 4.7,如下图所示。

Carthage的使用方法,顺带CocoaPods

编辑Cartfile

2.4 开始导入

$ carthage update --platform iOS

成功之后文件夹的结构会变为下图这样。

Carthage的使用方法,顺带CocoaPods

注意:如果build文件夹中没有.framework文件,可以到Xcode的Preferences的Locations中,做下图这样的设置。

Carthage的使用方法,顺带CocoaPods

2.5 把.framework文件导入项目

下面三张图展示了添加过程。

项目名称 --> TARGETS --> General --> Linked Frameworks and Libraries -> Add Other... --> 选择Carthage/Build/iOS/Alamofire.framework文件 --> 导入成功

Carthage的使用方法,顺带CocoaPods

2.5.1

Carthage的使用方法,顺带CocoaPods

2.5.2

Carthage的使用方法,顺带CocoaPods

2.5.3

2.6 添加Run Script

参考下面两张图进行操作。

项目名称 --> TARGETS --> General --> Build Phases --> 点击左上角加号 --> New Run Script Phase --> 点开Run Script --> 在 Shell 下面的黑色框中填入/usr/local/bin/carthage copy-frameworks --> 点击Input Files下面的加号 --> 为framework添加访问路径$(SRCROOT)/Carthage/Build/iOS/Alamofire.framework --> 完成

Carthage的使用方法,顺带CocoaPods

2.6.1

Carthage的使用方法,顺带CocoaPods

2.6.2

2.7 编译项目,完成!

Command + B编译项目,然后在需要的地方导入头文件,开始使用!

Carthage的使用方法,顺带CocoaPods

二、CocoaPods

1. 安装

1.1 更新gem到最新版本,终端中输入:

$ sudo gem update —system

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

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

1.3 添加镜像,终端输入:

$ gem sources -a https://gems.ruby-china.org/

1.4 安装CocoaPods,终端输入:

$ sudo gem install cocoapods

1.5 配置CocoaPods,这一步等待时间可能会有点长。终端输入:

$ pod setup

2. 使用

2.1 打开终端,cd到项目路径下。

2.2 生成Podfile文件,终端输入:

$ pod init

2.3 编辑Podfile文件

在终端输入

$ vim Podfile

然后点击键盘上的 i 进入编辑模式,在空白处写上你要用的第三方,例如pod ‘WHKit’,然后依次点击键盘上的esc和冒号,输入wq两个字母,代表保存并退出。

你也可以直接用外部编辑文字的软件来写Podfile文件(推荐Sublime)

2.4 安装,终端输入:

$ pod install

完成!

注意: 打开项目的方式发生了改变,以后需要双击.xcworkspace来打开项目。

3. 补充

3.1 如何用双引号的方式导入第三方

打开项目之后就可以直接使用WHKit了,现在可以#import 或#import ,但是却不能#import “WHKit.h”。

解决这个问题的办法是在工程的Build Settings搜索User header search paths,然后在User header search paths中添加$(SRCROOT)并选择recursive。

Carthage的使用方法,顺带CocoaPods

3.2 如果还想添加其他的第三方,只要在Podfile里面接着添加,终端再执行pod install。

3.3 第三方库一般都有人在维护升级,我们需要隔断时间就更新一下工程中第三方库的版本。只需要终端输入命令pod update。

3.4 如果遇到pod install或者pod update慢的问题

原因在于当执行以上两个命令的时候会升级CocoaPods的spec仓库,加一个参数可以省略这一步,速度就会提升不少。命令如下:

$ pod install --verbose --no-repo-update
$ pod update --verbose --no-repo-update

3.5 当我们需要去掉某个第三方库时

只需要在Podfile删除该引入该库的语句,然后执行pod update或者pod install。

3.6 删除项目中的cocoapods

把项目文件中多出来的文件都删掉就可以了,恢复点击Test.xcodeproj的方式来启动程序。

不过为了项目正常运行,你需要手动导入已经使用的第三方。

3.7 升级CocoaPods版本

命令和安装CocoaPods的命令一样:

$ sudo gem install cocoapods

如果老版本升级cocoapods的时候提示Operation not permitted - /usr/bin/xcodeproj,改用命令:

$ sudo gem install -n /usr/local/bin cocoapods --pre

3.8 卸载CocoaPods

$ sudo gem uninstall cocoapods

当出现Successfully uninstalled cocoapods字样就代表已经成功卸载。

3.9 升级MacOS导致cocoapods不能正常使用

如果出现这种情况,首先升级ruby:

$ sudo gem update --system

然后重新安装:

$ sudo gem install -n /usr/local/bin cocoapods

后记

以上就是Carthage和CocoaPods的使用方法。

我的GitHub: https://github.com/remember17


以上所述就是小编给大家介绍的《Carthage的使用方法,顺带CocoaPods》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Java程序设计与应用开发

Java程序设计与应用开发

於东军 / 清华大学出版社 / 2005-3 / 27.00元

本书作为Java程序的入门与应用教材,共分为3部分:第一部分讲解Java程序设计的基础知识,包括Java基本编程语言、面向对象设计思想、类、对象、接口以及异常处理。第二部分讲解Java程序设计的高级知识,包括:GUI编程、套接口编程、I/O系统、数据库访问以及多线程编程。第三部分详细分析一个实际项目的开发过程,包括系统分析及功能实现。在项目实例中综合应用第一、二部分的Java知识,能够帮助读者进一......一起来看看 《Java程序设计与应用开发》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

URL 编码/解码
URL 编码/解码

URL 编码/解码