iOS 9 导入类库全面详尽过程(Ruby安装->CocoaPods安装->导入类库)
由于IT行业的飞速发展,各类工具,软件更新速度都太快了,在网上找的攻略可能都已经不实用了,对于一个新手来说从一片空白到成功地用CocoaPods导入类库需要浏览大量博文,所以在这里我就把全过程整合了一下,并把我个人的安装过程和遇到的一些问题分享一下(以AFNetworking),希望本文能帮助新手只用看这一篇博文就顺利完成整个过程。
引用博文
如何在Mac OS X上安装 Ruby运行环境
CocoaPods安装和使用教程
目录
Ruby 安装
1.安装系统需要的包
# 先安装 Xcode 开发工具,它将帮你安装好 Unix 环境需要的开发包
2.安装 RVM
RVM 是干什么的这里就不解释了,后面你将会慢慢搞明白。
$ curl -L https://get.rvm.io | bash -s stable
期间可能会问你sudo管理员密码,以及自动通过homebrew安装依赖包,等待一段时间后就可以成功安装好 RVM。
然后,载入 RVM 环境(新开 Termal 就不用这么做了,会自动重新载入的)
$ source ~/.rvm/scripts/rvm
检查一下是否安装正确
$ rvm -v
rvm 1.22.17 (stable) by Wayne E. Seguin wayneeseguin@gmail.com, Michal Papis mpapis@gmail.com [https://rvm.io/]
3. 用 RVM 安装 Ruby 环境
列出已知的ruby版本
$ rvm list known
可以选择现有的rvm版本来进行安装(下面以rvm 2.0.0版本的安装为例)
$ rvm install 2.0.0
同样继续等待漫长的下载,编译过程,完成以后,Ruby, Ruby Gems 就安装好了。
另附:
查询已经安装的ruby
$ rvm list
卸载一个已安装版本
$ rvm remove 2.0.0
4. 设置 Ruby 版本
RVM 装好以后,需要执行下面的命令将指定版本的 Ruby 设置为系统默认版本
$ rvm 2.3.0 --default
同样,也可以用其他版本号,前提是你有用 rvm install 安装过那个版本
这个时候你可以测试是否正确
执行命令:
$ ruby -v
结果为:
ruby 2.3.0p0 (2015-12-25 revision 53290) [x86_64-darwin15]
执行命令:
$ gem -v
结果为:
2.5.1
由于Ruby的默认源在国外,国内访问这个网址有时候会有问题,网上的一种解决方案是将远替换成淘宝的镜像,替换方式如下:
移除原来:
$ gem source -r https://rubygems.org/
新增淘宝镜像
$ gem source -a https://ruby.taobao.org
要想验证是否替换成功了,可以执行:
$ gem sources -l
正常的输出结果:
CURRENT SOURCES
https://ruby.taobao.org/
注意:由于版本更新,http已经被废除了,所以这里是https
到这里就已经把Ruby环境成功的安装到了Mac OS X上,接下来就可以进行CocoaPods的安装啦。
CocoaPods安装
你没看错,真的只需要一行命令
$ sudo gem install cocoapods
用CocoaPods导入类库(以AFNetworking为例)
每个项目只需要一个Podfile文件。在终端中进入(cd命令)你项目所在目录,然后在当前目录下,利用vim创建Podfile,运行:
$ vim Podfile
打开Podfile文件:
$ open -a Xcode Podfile
为保证安装的是最新版本,打开GitHub上AFNetworking的页面链接,往下翻页可以看到:
如果直接把下面官方提供的这段代码写入Podfile文件会在进行后面操作时报错
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'
pod 'AFNetworking', '~> 3.0'
需要指明target,并写出目录,如下所示:
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'
use_frameworks!
target 'Web' do
pod 'AFNetworking', '~> 3.0'
end
xcodeproj 'Desktop/Web/Web.xcodeproj'
target后面为工程名,最后一行为工程路径(这里的Web是我的工程名)
最后执行:
$ pod install
这里有可能会报错让你执行“pod repo update ”命令,建议老老实实更新repo,我当时就嫌太慢,去搜了个镜像,把原来的master移除了,结果还是不行,仔细一看评论,发现该镜像已经停用了。又找了半天下载了一个master直接拖到目录下,又报其他错,搜了半天还是没能解决,最后只能重新set up,挂了个通宵,第二天早上起来就好了。
安装完成后,用以下命令打开新的后缀为.xcworkspace工作空间,而不是.xcodeproj
$ open Web.xcworkspace
这里的Web替换为你的工程名字,然后我们就能在新的工作空间里看到AFNetworking类库了
Swift环境需要的操作
由于大多数类库都是用Objective-C写的,所以Swift环境下还需要在桥接头文件中引入一个Objective-C头文件,可以自定义名称,规范名为“工程名-Bridging-Header.h”。然后在Target->工程名->Build Settings->Swift Compiler -Code Generation中修改 Objective-C Bridging Header 为你的头文件名。
在该头文件内写入
#import <AFNetworking/AFNetworking.h>
然后就可以正常调用AFNetworking类库中的类了
import UIKit
import AFNetworking
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
let sessionManager = AFHTTPSessionManager(baseURL: NSURL(string: "http://blog.csdn.net/sps900608"))
// Do any additional setup after loading the view, typically from a nib.
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
注意:需要在用到AFNetworking类库时,加“import AFNetworking”