Cocoapods方式导入OC库和swift库

http://blog.csdn.net/u010291330/article/details/52606233ios

导入 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版本
(若是出现ruby版本升级问题,能够参考ruby升级笔记)
而后再次执行sudo gem install cocoapods

下一步clone 项目
pod setup --verbose


1、导入swift库Alamofire
首先,搜索须要的第三方库是否支持 CocoaPods ,执行命令:
1 $ pod search Alamofire

新建项目CocoaPodsDemo而后进入 Xcode 项目文件目录,输入命令pod init新建 Podfile 文件
pod init

以后须要编辑 Podfile 文件,让它包含 FontBlaster 这个第三方库。使用以下命令打开它
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 和相关依赖都会被自动安装。
完成后用Xcode打开.xcworkspace白色文件,再也不打开.xcodeproj那个蓝色文件

打开后工程目录以下,红色框内仍然是工程文件:

测试是否引入成功:
在swift文件中添加import Alamofire没有报错则成功。

2、导入OC库 AFNetworking
一、先关闭工程,修改Podfile,添加 pod 'AFNetworking',而后update一下podfile再打开工程
target 'CocoaPoasDemo' do

source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'
use_frameworks!

pod 'AlamofireImage', '~> 2.0'

pod 'AFNetworking'
 
end

swift语言使用cocoapods配置Podfile文件时要加上use_framework!这句代码,做用是把三方库打包成静态库


二、创建一个桥接文件Bridging-Header.h头文件

三、修改头文件内容

#ifndef CocoaPoasDemo_Bridging_Header_h
#define CocoaPoasDemo_Bridging_Header_h

#import "AFNetWorking.h"

#endif /* Bridging_Header_h */

四、设置一个User Header Search Paths,不然在须要用三方库的地方是调不出来的。在target——>Build Setting里找到search Paths,双击User Header Search Paths后面的空白处, 设置目录路径为 ${SRCROOT}   , 后边选择 recursive。

五、测试导入是否成功: import AFNetworking

相关文章
相关标签/搜索