CocoaPods简介及最新详细使用
2016-01-13 11:57
477 查看
一、简介
每一种语言发展到一定阶段,都会出现相应的依赖管理工具,而CocoaPods就是iOS项目的依赖管理工具,类似与Java语言的Maven。CocoaPods的出现使得我们节省了很多设置和更新第三方开源库的时间。二、为什么要使用CocoaPods
如上所述:CocoaPods可以帮助我们节省很多设置和更新第三方开源库的时间。在使用CocoaPods以前,我们需要:
1、把第三方开源库的源代码文件复制到项目中。
2、这些开源库通常需要依赖系统的一些framework,我们需要手工的将这些framework意义增加到项目依赖中。
3、对于某些开源库,我们还需要设置-licucore或者-fno-objc-arc等编译参数。
4、管理这些依赖包的更新。
这些“体力活”虽然简单,但毫无技术含量并且浪费时间。使用CocoaPods之后,它可以更好的帮我们完成这些事情。
三、安装CocoaPods
下载安装CocoaPods需要Ruby环境。Mac OS本身自带Ruby,但还是更新一下Ruby。1、查看当前ruby版本(终端输入)
$ ruby -v2、更新gem
$sudo gem update –system3、更新ruby的源步骤
A、移除现有Ruby默认源:$gem sources –remove https://rubygems.org/
B、使用新的源:
$gem sources -a https://ruby.taobao.org/
C、验证新源是否替换成功:
$gem sources -l
4、安装CocoaPods
$sudo gem install cocoapods$pod setup
备注:苹果系统升级OS X EL Capitan后改为$sudo gem install -n /usr/local/bin cocoapods
四、使用CocoaPods集成三方库
1、创建项目、终端cd到项目总目录
A、新建一个项目B、终端下cd到项目总目录(注意:包含PodTest文件夹、PodTest.xcodeproj、PodTestTest的那个总目录)
2、vim建立Podfile(配置文件)
A、终端输入 vim Podfile(接着上一步,是在项目总目录下创建的)B、进入编辑模式
输入 i,进入编辑模式。
输入
platform :ios, ‘7.0’
pod ‘MBProgressHUD’, ‘~> 0.8’
pod ‘AFNetworking’, ‘~> 2.0’
C、保存退出
按Esc –> 输入大写ZZ
发现PodTest项目总目录中多一个Podfile文件
3、导入第三方库
A、确定终端cd到项目总目录,然后输入 pod install,等待一会,大约3分钟。出现如下图的结果说明集成成功。B、对于工程发生的变化,有几点需要说明:
a、使用CocoaPods生成的*.xcworkspace文件来打开工程,而不是以前的.xcodeproj文件。
b、每次更改了Podfile文件,都要重新执行一次 pod update 命令。
五、查找三方库
终端输入命令:pod search masonry六、补充
1、修改Podfile文件
A、vim中修改Podfile文件参考上面vim建立Podfile(配置文件)
B、在Xcode中编辑Podfile
注意:每次更改了Podfile文件,都要重新执行一次 pod update 命令。
2、配置Podfile文件支持多个Target
项目存在多个Target的时候,需要配置Podfile文件来支持新增加的Target,否则只支持项目默认建立时生成的Target:A、两个Target所需要的第三方库相同
link_with 'Target1', 'Target2' platform :ios platform :ios, ‘9.0’ pod 'AFNetworking', '~> 2.0'
B、两个Target所需要的第三方库不相同
platform :ios target :'Target1' do pod 'Reachability' pod 'SBJson' pod 'AFNetworking' end target :'Target2' do pod 'OpenUDID' end
3、移除项目中的Cocoapods
A. 删除工程文件夹下的Podfile、Podfile.lock及Pods文件夹B. 删除xcworkspace文件
C. 使用xcodeproj文件打开工程,删除Frameworks组下的Pods.xcconfig及libPods.a引用
D. 在工程设置中的Build Phases下删除Check Pods Manifest.lock、Embed Pod Frameworks及Copy Pods Resources
4、当库正常导入,但还是找不到相关头文件
在TARGETS -> Build Settings -> Search Paths -> User Header Search Paths 中,写入 ${SRCROOT}再将后面参数改为recursive5、Unable to satisfy the following requirements:
错误:[!] Unable to satisfy the following requirements: - `Masonry` required by `Podfile` Specs satisfying the `Masonry` dependency were found, but they required a higher minimum deployment target.
解决方案:安装流程:Podfile文件 中 platform:ios, ‘6.0’ 后边的 6.0 是平台版本号 ,一定要加上
相关阅读:
《iOS开发进阶》 唐巧 著
iOS开发~CocoaPods使用详细说明
相关文章推荐
- 【DevOps】为什么我们永远疲于奔命?
- 网络管理之IP地址篇
- 文件的读出 编辑 管理
- SQL Server 2008 R2 应用及多服务器管理
- VC下通过系统快照实现进程管理的方法
- 使用jQuery管理选择结果
- SQLServer 管理常用SQL语句
- 图书管理程序(二)
- javascript的内存管理详解
- iOS开发之路--微博“更多”页面
- 图书管理程序(三)
- 图书管理程序(一)
- 阿里云云服务器远程连接管理Linux服务器图文教程
- 解析PHP强制转换类型及远程管理插件的安全隐患
- Mongo管理用户相关操作总结
- 详解MongoDB管理命令
- Linux下实现SSH免密码登录和实现秘钥的管理、分发、部署SHELL脚本分享
- iOS开发之路--微博骨架搭建
- IOS开发代码分享之获取启动画面图片的string
- 2016最新CocoaPods安装和错误解决方案