iOS开发~CocoaPods使用详细说明
2016-04-25 09:09
369 查看
转载自有梦想的蜗牛的博客,原址:http://blog.csdn.net/showhilllee/article/details/38398119
一、概要
iOS开发时,项目中会引用许多第三方库,CocoaPods(https://github.com/CocoaPods/CocoaPods)可以用来方便的统一管理这些第三方库。
二、安装
由于网上的教程基本都大同小异,但细节之处还不是很完善,所以借机会在这里补充下:
注:要使用CocoaPods,那就要下载安装它,而下载安装CocoaPods需要Ruby环境
1、Ruby环境搭建
当前安装环境为Mac mini 10.8.5。Mac OS本身自带Ruby,但还是更新一下保险,因为我第一次安装在没有更新Ruby的情况下就失败了。
a 查看下当前ruby版本:打开终端输入 ruby -v(确实安装了,不过用这个版本接下来工作失败了,所以更新下ruby)
[objc] view
plaincopyprint?
ritekiMac-mini:PodTest lucky$ ruby -v
ruby 1.8.7 (2012-02-08 patchlevel 358) [universal-darwin12.0]
ritekiMac-mini:PodTest lucky$
b 更新ruby
终端输入如下命令(把Ruby镜像指向taobao,避免被墙,你懂得)
gem sources --remove https://rubygems.org/
gem sources -a https://ruby.taobao.org/
gem sources -l (用来检查使用替换镜像位置成功)
[objc] view
plaincopyprint?
ritekiMac-mini:~ lucky$ gem sources --remove https://rubygems.org/
https://rubygems.org/ removed from sources
ritekiMac-mini:~ lucky$ gem sources -a https://ruby.taobao.org/
https://ruby.taobao.org/ added to sources
ritekiMac-mini:~ lucky$ gem sources -l
*** CURRENT SOURCES ***
2、下载安装CocoaPods
终端输入:sudo
gem install cocoapods
[html] view
plaincopyprint?
ritekiMac-mini:~ lucky$ sudo gem install cocoapods
CHANGELOG:
## 0.32.1
##### Bug Fixes
* Fixed the Podfile `default_subspec` attribute in nested subspecs.
[Fabio Pelosin][irrationalfab]
\ [#2050](https://github.com/CocoaPods/CocoaPods/issues/2050)
Successfully installed cocoapods-0.32.1
Installing ri documentation for cocoapods-0.32.1
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rdoc/rdoc.rb:280: warning: conflicting chdir during another chdir block
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rdoc/rdoc.rb:287: warning: conflicting chdir during another chdir block
Done installing documentation for cocoapods after 10 seconds
1 gem installed
这样就下载安装好了CocoaPods
3、使用CocoaPods
a 新建一个项目,名字PodTest
b 终端中,cd到项目总目录(注意:包含PodTest文件夹、PodTest.xcodeproj、PodTestTest的那个总目录)
[objc] view
plaincopyprint?
cd /Users/lucky/Desktop/PodTest
c 建立Podfile(配置文件)
接着上一步,终端输入 vim Podfile
键盘输入 i,进入编辑模式,输入
platform :ios, '7.0'
pod 'MBProgressHUD', '~> 0.8'
然后按Esc,并且输入“ :”号进入vim命令模式,然后在冒号后边输入wq
注意:键盘输入 :后,才能输入wq。回车后发现PodTest项目总目录中多一个Podfile文件
激动人心的时刻到了:确定终端cd到项目总目录,然后输入 pod install,等待一会,大约3分钟。
查看项目根目录:
注意:现在打开项目不是点击 PodTest.xodeproj了,而是点击 PodTest.xcworkspace
打开项目后看到项目结构并且测试一下:
运行结果:
补充:
1、CocoaPods的基本安装及使用都详细的说明了,但还有一些补充,当需要同时导入多个第三方时候怎么办 ?
这就需要修改Podfile了,就是用vim编辑的那个保存在项目根目录中的文件,修改完了Podfile文件,需要重新执行一次pod
install命令。
例如:
platform :ios
pod 'JSONKit', '~> 1.4'
pod 'AFNetworking', '~> 2.0'
注意:2017-07-07修正:
podfile升级之后到最新版本为1.0.1后,pod里的内容必须明确指出所用第三方库的target,否则会出现The dependency
`` is not used in any concrete target这样的错误。
1)
查看pod版本:kinglys-iMac:.cocoapods kingly$ pod --version
1.2.0
发现 cocoapods 最新版本
2)我的Podfile的内容如下:
platform:ios,'7.0'
pod 'Masonry', '~> 1.0.1'
pod 'MJRefresh', '~> 3.1.12'
结果执行:pod install 后出现错误The dependency `` is not used in any concrete target
3)修复这个错误只需要修改成如下即可:
platform :ios, "8.0"
target :'ReactiveCocoaDemo' do
pod 'Masonry', '~>1.0.2'
end
2、CocoaPods可以查找你想要的第三方库
终端输入命令:pod search UI
疯了了,我怎么查找这么大众的关键字,好多库~~
然后重新编辑Podfile文件,按照之前的步骤,把更多的库都导入项目!
本博客盗窃自阿福的博客,地址:http://blog.csdn.net/lizhongfu2013/article/details/26384029
============================我是分割线==================================
2015-11-18更新
淘宝已经关闭HTTP协议的景象服务,改为HTTPS协议。
淘宝ruby地址:https://ruby.taobao.org/
感谢@HeminWon 的指正
2017-07-07修正,
podfile升级之后到最新版本为1.0.1后,pod里的内容必须明确指出所用第三方库的target,否则会出现The
dependency `` is not used in any concrete target这样的错误。
一、概要
iOS开发时,项目中会引用许多第三方库,CocoaPods(https://github.com/CocoaPods/CocoaPods)可以用来方便的统一管理这些第三方库。
二、安装
由于网上的教程基本都大同小异,但细节之处还不是很完善,所以借机会在这里补充下:
注:要使用CocoaPods,那就要下载安装它,而下载安装CocoaPods需要Ruby环境
1、Ruby环境搭建
当前安装环境为Mac mini 10.8.5。Mac OS本身自带Ruby,但还是更新一下保险,因为我第一次安装在没有更新Ruby的情况下就失败了。
a 查看下当前ruby版本:打开终端输入 ruby -v(确实安装了,不过用这个版本接下来工作失败了,所以更新下ruby)
[objc] view
plaincopyprint?
ritekiMac-mini:PodTest lucky$ ruby -v
ruby 1.8.7 (2012-02-08 patchlevel 358) [universal-darwin12.0]
ritekiMac-mini:PodTest lucky$
b 更新ruby
终端输入如下命令(把Ruby镜像指向taobao,避免被墙,你懂得)
gem sources --remove https://rubygems.org/
gem sources -a https://ruby.taobao.org/
gem sources -l (用来检查使用替换镜像位置成功)
[objc] view
plaincopyprint?
ritekiMac-mini:~ lucky$ gem sources --remove https://rubygems.org/
https://rubygems.org/ removed from sources
ritekiMac-mini:~ lucky$ gem sources -a https://ruby.taobao.org/
https://ruby.taobao.org/ added to sources
ritekiMac-mini:~ lucky$ gem sources -l
*** CURRENT SOURCES ***
2、下载安装CocoaPods
终端输入:sudo
gem install cocoapods
[html] view
plaincopyprint?
ritekiMac-mini:~ lucky$ sudo gem install cocoapods
CHANGELOG:
## 0.32.1
##### Bug Fixes
* Fixed the Podfile `default_subspec` attribute in nested subspecs.
[Fabio Pelosin][irrationalfab]
\ [#2050](https://github.com/CocoaPods/CocoaPods/issues/2050)
Successfully installed cocoapods-0.32.1
Installing ri documentation for cocoapods-0.32.1
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rdoc/rdoc.rb:280: warning: conflicting chdir during another chdir block
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rdoc/rdoc.rb:287: warning: conflicting chdir during another chdir block
Done installing documentation for cocoapods after 10 seconds
1 gem installed
这样就下载安装好了CocoaPods
3、使用CocoaPods
a 新建一个项目,名字PodTest
b 终端中,cd到项目总目录(注意:包含PodTest文件夹、PodTest.xcodeproj、PodTestTest的那个总目录)
[objc] view
plaincopyprint?
cd /Users/lucky/Desktop/PodTest
c 建立Podfile(配置文件)
接着上一步,终端输入 vim Podfile
键盘输入 i,进入编辑模式,输入
platform :ios, '7.0'
pod 'MBProgressHUD', '~> 0.8'
然后按Esc,并且输入“ :”号进入vim命令模式,然后在冒号后边输入wq
注意:键盘输入 :后,才能输入wq。回车后发现PodTest项目总目录中多一个Podfile文件
激动人心的时刻到了:确定终端cd到项目总目录,然后输入 pod install,等待一会,大约3分钟。
查看项目根目录:
注意:现在打开项目不是点击 PodTest.xodeproj了,而是点击 PodTest.xcworkspace
打开项目后看到项目结构并且测试一下:
运行结果:
补充:
1、CocoaPods的基本安装及使用都详细的说明了,但还有一些补充,当需要同时导入多个第三方时候怎么办 ?
这就需要修改Podfile了,就是用vim编辑的那个保存在项目根目录中的文件,修改完了Podfile文件,需要重新执行一次pod
install命令。
例如:
platform :ios
pod 'JSONKit', '~> 1.4'
pod 'AFNetworking', '~> 2.0'
注意:2017-07-07修正:
podfile升级之后到最新版本为1.0.1后,pod里的内容必须明确指出所用第三方库的target,否则会出现The dependency
`` is not used in any concrete target这样的错误。
1)
查看pod版本:kinglys-iMac:.cocoapods kingly$ pod --version
1.2.0
发现 cocoapods 最新版本
2)我的Podfile的内容如下:
platform:ios,'7.0'
pod 'Masonry', '~> 1.0.1'
pod 'MJRefresh', '~> 3.1.12'
结果执行:pod install 后出现错误The dependency `` is not used in any concrete target
3)修复这个错误只需要修改成如下即可:
platform :ios, "8.0"
target :'ReactiveCocoaDemo' do
pod 'Masonry', '~>1.0.2'
end
2、CocoaPods可以查找你想要的第三方库
终端输入命令:pod search UI
疯了了,我怎么查找这么大众的关键字,好多库~~
然后重新编辑Podfile文件,按照之前的步骤,把更多的库都导入项目!
本博客盗窃自阿福的博客,地址:http://blog.csdn.net/lizhongfu2013/article/details/26384029
============================我是分割线==================================
2015-11-18更新
淘宝已经关闭HTTP协议的景象服务,改为HTTPS协议。
淘宝ruby地址:https://ruby.taobao.org/
感谢@HeminWon 的指正
2017-07-07修正,
podfile升级之后到最新版本为1.0.1后,pod里的内容必须明确指出所用第三方库的target,否则会出现The
dependency `` is not used in any concrete target这样的错误。
相关文章推荐
- iOS开发:关于NSUserDefault的用法
- 自学iOS-获取当前时间
- iOS基础-属性与成员变量的区别
- iOS开发系列--通讯录、蓝牙、内购、GameCenter、iCloud、Passbook系统服务开发汇总
- iOS开发系列--通知与消息机制
- iOS开发系列--触摸事件、手势识别、摇晃事件、耳机线控
- iOS开发系列--视图切换
- iOS学习总结之ARC和非ARC的单例模式实现
- iOS开发需要哪些图片?
- iOS开发系列--无限循环的图片浏览器
- iOS设置声音和震动
- iOS中runtime的简单用法——动态绑定
- iOS纯代码创建按键点击事件与非代码创建按键点击事件的实现
- iOS中将汉字转换为拼音的API
- 进行iOS代码调试之LLDB调试器
- iOS 计算日期间隔天数 —— HERO博客
- iOS查看日志利器 —— socat
- iOS 自定义cell高度(非等高)
- 2016春季 斯坦福大学iOS9开发 公开课上线
- iOS环信集成<1>