Cocoapods 是 iOS 应用的包管理程序。它简化了第三方库的导入并且将帮你处理库之间的依赖。在这个教程中,我们将会使用 cocoa pods
导入
Alamofire(swift库)和AFNetworking(OC库)
这两个个第三方库
。本教程的环境
基于 iOS8 和 Xcode7.3.1
。
打开 Xcode 使用
Single View Application
创建一个项目。项目名称可以使用
IOS8SwiftCocoapodsTutorial,其他配置项可以自定义。选择
Swift 作为开发语言,并且设备项选中
iPhone。
新建项目
咱们的这个教程中会用到一个字体,可以从
这里下载,并加入到项目中。接下来,
关闭 Xcode 项目并打开终端。首先我们需要
安装 cocoa pods。这个过程将会用到 ruby环境,而 Mac OS X 系统已经自带了 ruby。
ruby -v
查看当前Ruby的版本。在终端中输入如下命令:
sudo gem install cocoapods
译者注:因某些原因不能安装成功的同学,
ERROR: Error installing cocoapods:
activesupport requires Ruby version >= 2.2.2.
可以参考唐巧的这篇
博客
升级ruby版本
然后再次执行
sudo gem install cocoapods
下一步clone 项目
pod setup --verbose
一、导入swift库Alamofire
1 | $ pod search Alamofire |
pod init
open -a Xcode Podfile
不要使用文本编辑去编辑Podfile,使用Xcode编辑,或者使用终端敲命令去编辑。
编辑后的 Podfile 文件如下
# Uncomment this line to define a global platform for your project
# platform :ios,'9.0'
target 'CocoaPoasDemo' do
source 'https://github.com/CocoaPods/Specs.git'
platform :ios,'8.0'
use_frameworks!
pod 'AlamofireImage','~> 2.0'
end
译者注:这里的版本号 1.0.8 为译者加上,FontBlaster 已经支持 Swift 2.0,如果不指定为该版本号,会下载最新的 FontBlaster,这要求 Xcode 7.x版本。如果你使用的是 Xcode6.x 版本,需要指定该版本号。
项目的 target 是 iOS8.0,
use_frameworks!
这句是必须的,因为 Swift 使用的是框架而不是静态库。
pod 'FontBlaster' 告诉 Cocoapods 你想在项目中使用 FontBlaster 。
保存对文件的修改,并在终端中输入以下命令pod install
,但这里又会遇到问题了,上网找了之后发现用这个命令已经不行了,用
pod install --verbose --no-repo-update
就可以,
前面的被墙啦!!
bogon:CocoaPoasDemo frosoft$
pod install --verbose --no-repo-update
.........
.........
Sending stats
- Alamofire,3.4.2
- AlamofireImage,2.4.1
Pod installation complete! There is 1 dependency from the Podfile and 2 total
pods installed.
bogon:CocoaPoasDemo frosoft$
FontBlaster 和相关依赖都会被自动安装。
打开后工程目录如下,红色框内仍然是工程文件:
测试是否引入成功:
@H_386_301@二、导入OC库
AFNetworking
target 'CocoaPoasDemo' do
source 'https://github.com/CocoaPods/Specs.git'
platform :ios,'8.0'
use_frameworks!
pod 'AlamofireImage','~> 2.0'
pod 'AFNetworking'
end
#ifndef
CocoaPoasDemo_Bridging_Header_h
#define
CocoaPoasDemo_Bridging_Header_h
#import "AFNetWorking.h"
#endif /* Bridging_Header_h */
4、
设置一个
User Header Search Paths,否则在需要用三方库的地方是调不出来的。
在target——>Build Setting里找到search Paths
,双击
User Header Search Paths后面的空白处
,
设置目录路径为
${SRCROOT} ,
后边选择
recursive。
5、测试导入是否成功:
import AFNetworking