cocoapods 详尽使用
platform :ios, '9.1'
pod "AFNetworking", "3.0.4"
platform :ios, '9.1'
pod 'MJRefresh', '~> 3.0.8'
pod install --verbose --no-repo-update
pod install 换成pod install --verbose --no-repo-update这个命令,前面的命令被墙了
iOS开发~CocoaPods使用详细说明
一、概要
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)
- 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 (用来检查使用替换镜像位置成功)
- 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
- 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的那个总目录)
- 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'
2、CocoaPods可以查找你想要的第三方库
终端输入命令:pod search UI
疯了了,我怎么查找这么大众的关键字,好多库~~
然后重新编辑Podfile文件,按照之前的步骤,把更多的库都导入项目!
转载于:https://www.cnblogs.com/gzz2016/p/5106410.html
cocoapods 详尽使用相关推荐
- cocoapods更新
使用sudo gem install cocoapods更新提示: ERROR: While executing gem ... (Errno::EPERM) Operation not permit ...
- cocoaPods安装、更新第三方库
pod install 换成 pod install --verbose --no-repo-update pod update 换成 pod update --verbose --no-repo-u ...
- HashSet中的add()方法( 五 )(详尽版)
上接 HashSet中的add()方法( 四 )(详尽版) ,我们再重写一下equals()方法来看看是否可以不能存入相同的id: 在学生类中再重写equals()方法: public class S ...
- HashSet中的add()方法( 四 )(详尽版)
上接 HashSet中的add()方法( 三 )(详尽版) ,我们重写一下Student类中的hashCode()方法来看看是否还能不能添加重复的学号了, 在学生类中重写hashCode()方法: p ...
- HashSet中的add()方法( 三 )(详尽版)
上接HashSet中的add()方法( 二 )(详尽版) ,前两篇说的是泛型为String类的add()方法的具体执行过程,此后三篇说说泛型为自定义类的add()方法的具体执行过程: 首先让我们来自定 ...
- HashSet中的add()方法( 零 )(详尽版)
我们知道在使用HashSet集合时,也就是在用HashMap集合,这是因为HashSet的底层是HashMap, public HashSet() {map = new HashMap<> ...
- HashSet中的add()方法( 一 )(详尽版)
让我们用例子来理解add()方法的底层代码吧,Let's go: import java.util.HashSet;public class Test {public static void main ...
- HashSet中的add()方法( 二 )(详尽版)
本篇接着上一篇:(详尽版)HashSet中的add()方法( 一 )(详尽版) 有些东西上一篇说过了,这里就不再赘述了,具体说一下再次添加与第一次添加的区别: import java.util.Has ...
- CocoaPods私有库搭建的记录
前言 随着项目的业务增加以及马甲包进度的跟进,一些重复的独立业务以私有库的方式引入到项目中对于项目进度的开发就显得越发的迫切了,本文主要记录自己搭建私有库时的整个流程,以防后面再次搭建时忘记,方便自己 ...
最新文章
- oracle 尖括号_Oracle常用函数整理
- 以使用QSqlQuery向数据库中插入数据为例,做一个小结
- 剑指offer-数组中的重复的数字-p39
- 三天打鱼两天晒网 (15 分)
- 洛阳php编程培训,洛阳PHP开发培训分享提高PHP开发效率的四个编程习惯
- 计量风险系列—两大定价产品怎么计算风险损失
- 六层电梯的PLC控制程序
- icem合并面网格_ICEM CFD混合网格
- 网页效果图设计之色彩配色索引
- 网站维护要做哪些工作
- ACM-ICPC 知识点 经验
- 易企秀 背景音乐 下载
- RabbitMq设置可视化界面
- 小飞升值记——(终章)
- 【DEBUG】2021-03-15 不定期的自我检讨001
- 这几种常见的保护电路,你都了解吗?
- 如何做项目计划,如何落实项目任务
- 软碟通 UltraISO,虚拟光盘文件的制作,编辑,转换工具,可以直接编辑虚拟光盘或提取文件,打开isz,iso的工具,注册码...
- shell 调用matlab,在matlab中调用linux命令 以及后台运行matlab --zz
- springboot 数据对比 差异提取
热门文章
- (转)android UI进阶之自定义组合控件
- Iperf 源代码分析(四)
- 第七章:【UCHome二次开发】模板语法说明
- MIT自适应律MRAC的理解和MATLAB实现
- axios post object object_Vue前端开发——数据交互axios
- Gensim1.0.0+ 错误'Word2Vec' object has no attribute 'vocab'
- TokenInsight:反映区块链行业整体表现的TI指数较昨日同期上涨0.8%
- SAP License:SAP系统上线时的相关检查清单
- SAP License:SAP结帐操作详细操作指南
- SAP License:部分清帐和剩余清帐的区别(实例)