CocoaPods的安装和使用
来源:互联网 发布:淘宝办电工证是真的吗 编辑:程序博客网 时间:2024/05/16 11:01
这种教程烂大街了,不过我还是写一写,有利于我个人的生态平衡…… :-)
这篇文章主要讲解安装和使用,安装和使用过程中遇到的问题(出错)会记录在CocoaPods使用异常及处理方式,欢迎前往补充
项目开发中,难免会遇到一些开发起来耗时间(or 棘手 or 难办)的功能,那么我就会访问我的贴心小棉袄github,寻找是否已经存在一些符合(or not)项目需求的解决方案。
得益于github大神众多,我往往能找到一些不错的开源库,然后暴力拖拽到项目当中,导入、引用、调试、成功、提交,哦也!(^-^)/
但当引用的第三方库越来越多的时候,一些很尴尬的事情逐渐发生了:-(
1、库文件过大、过多,svn/git commit and update太慢太卡啦~
2、库文件的更新非常麻烦,尤其是使用svn做版本管理的时候,很容易commit失败、update出现问题
3、囧rz 为什么从github下载的可以运行,导入到我的项目就不能了呢……哦,少了framework,少了其他的第三方库……
4、还遇到两个第三方库同时引用了另一个库,想想都是泪
……
所以这个时候,CocoaPods来了,官方的说法是:
CocoaPods是依赖于Swift和Objective-C Cocoa项目。它有近万的库,可以帮助你优雅地扩展您的项目。(☆_☆)
用了CocoaPods后你能告别很多烦恼。
OK,Let's start!
----------------INSTALL--------------------------------
打开终端(Terminal)
安装CocoaPods的命令基于Ruby环境,并且需要管理员权限,so
$ sudo gem install cocoapods
如果出现
Fetching: cocoapods-core-0.37.2.gem (100%)Successfully installed cocoapods-core-0.37.2Fetching: xcodeproj-0.24.2.gem (100%)Successfully installed xcodeproj-0.24.2Fetching: cocoapods-try-0.4.5.gem (100%)Successfully installed cocoapods-try-0.4.5Fetching: cocoapods-trunk-0.6.1.gem (100%)Successfully installed cocoapods-trunk-0.6.1Fetching: cocoapods-0.37.2.gem (100%)Successfully installed cocoapods-0.37.2Parsing documentation for cocoapods-core-0.37.2Installing ri documentation for cocoapods-core-0.37.2Parsing documentation for xcodeproj-0.24.2Installing ri documentation for xcodeproj-0.24.2Parsing documentation for cocoapods-try-0.4.5Installing ri documentation for cocoapods-try-0.4.5Parsing documentation for cocoapods-trunk-0.6.1Installing ri documentation for cocoapods-trunk-0.6.1Parsing documentation for cocoapods-0.37.2Installing ri documentation for cocoapods-0.37.25 gems installed
pod --version
然后你就能愉快的使用,反之,卸载命令
$ gem uninstall cocoapods
否则,请前往CocoaPods使用异常及处理方式查看错误原因,欢迎前往补充
因为接下来要发一个公交app的系列文章(还称不上教程(≧∇≦)),所以这里就用高德地图sdk来作为示范
可以看看高德地图sdk手动配置,2d/3d/search都需要的话,单单引入framework就要11个,作为一个励志成为大神的男人,这种重复性的东西我是拒绝的……再简单也拒绝……:P
so
我们来自动配置高德地图sdk
----首先我们先了解如何判断一个第三方库是不是包含在CocoaPods源中------
----通过search命令(库名不区分大小写)----
pod search AMap3DMap这里搜索高德地图的3d地图库,返回的结果是
-> AMap3DMap (2.5.1) 3D Map SDK for iOS by Autonavi. pod 'AMap3DMap', '~> 2.5.1' - Homepage: http://lbs.amap.com/api/ios-sdk/summary/ #库的主页 - 介绍 - Source: http://cache.amap.com/lbs/sdk/AMap_iOS_API_3DMap_Lib_V2.5.1.zip - Versions: 2.5.1, 2.5.0, 2.4.2, 2.4.1, 2.4.0, 2.3.0 [master repo]可以清楚的看到里面包含了很多重要的信息,其中
pod 'AMap3DMap', '~> 2.5.1'就是关键的使用方法啦
----然后我们来给项目关联CocoaPods-------
1、我创建了一个BUSDEMO项目,使用终端(vi命令)或文本编辑的方式在该目录里创建一个podfile文件(文本编辑创建的需要去掉扩展名)
2、通过终端(vi命令)或文本编辑器编辑podfile,输入
platform :ios, '8.0' #这里是备注,platform指的是ios平台及最高版本,版本号可以省略pod 'AMap3DMap', '~> 2.5.1' #这里说明引用指定的库名及版本号pod 'AMapSearch' #版本号可以省略,默认使用最高版本
3、使用终端(cd命令)进入项目目录
cd /Users/roy/Desktop/练习/bus/BUSDEMO
4、使用终端安装CocoaPods相关的源
pod install逐渐的出现以下内容
Analyzing dependenciesDownloading dependenciesInstalling AMap3DMap (2.5.1)Installing AMapSearch (2.5.0)Generating Pods projectIntegrating client project[!] Please close any current Xcode sessions and use `BUSDEMO.xcworkspace` for this project from now on.表示成功,最后告诉你从现在开始使用xxx.xcworkspace文件,就是这个家伙
同时我们看到多出了几个文件,Pods文件夹主要放第三方库了,Podfile.lock这个以后再具体解说,这里留个坑
----添加新的源或删除已有的源-------
直接修改podfile文件,备注3d,添加2d
platform :ios #这里是备注,platform指的是ios的最高版本号#pod 'AMap3DMap', '~> 2.5.1' #这里说明引用指定的库名及版本号pod 'AMapSearch' #版本号可以省略,默认使用最高版本pod 'AMap2DMap' #添加一个新的源##########使用终端(cd命令)进入项目目录,并安装
pod install
(pod install如果一直卡着不动的话,就用pod install --verbose --no-repo-update命令试试)
结果
Analyzing dependencies<span style="color:#cc0000;">Removing AMap3DMap</span>Downloading dependencies<span style="color:#009900;">Installing AMap2DMap (2.5.0)</span>Using AMapSearch (2.5.0)Generating Pods projectIntegrating client project结果显示remove了3D源,installing了2D源,Using表示没有修改
----如果库有升级,则更新源-----
pod update结果
<span style="color:#cc9933;">Update all pods</span>Analyzing dependenciesDownloading dependenciesUsing AMap2DMap (2.5.0)Using AMapSearch (2.5.0)Generating Pods projectIntegrating client project这里没有可更新的……
--------结尾------------------------
CocoaPods不止这么简单的功能,还有很多有待发掘,比如如何设置私有库、获取帮助文档、podspec等等
这里留个坑,以后慢慢填。
- CocoaPods的安装和使用
- cocoapods的安装和使用
- Cocoapods的安装和使用
- cocoapods的安装和使用
- cocoapods 的安装和使用
- cocoaPods的安装和使用
- CocoaPods的安装和使用
- cocoaPods 的安装和使用
- cocoaPods的安装和使用
- CocoaPods的安装和使用
- cocoaPods的安装和使用
- Cocoapods的安装和使用
- CocoaPods的安装和使用
- CocoaPods的安装和使用
- CocoaPods的安装和使用
- CocoaPods的安装和使用
- cocoapods的安装和使用
- cocoaPods的安装和使用
- 解决 Mac OS SSH 登陆 Linux 出现中文乱码问题
- 第十四周项目四 处理C++源代码的程序(统计main函数、简单整理格式、在代码前加行号)
- MapReduce小文件处理之CombineFileInputFormat实现
- 读书笔记-《细说PHP》
- HttpURLConnection(二)
- CocoaPods的安装和使用
- Python_Scrapy_3.介绍骨架
- 使用java反射技术完成对象所有属性值的输出
- PHP设计模式——备忘录模式
- Thinking In Java笔记(第八章 多态)
- Android(安卓)内存分配机制详解 不需要关闭后台运行程序
- iOS图片缓存库基准对比
- easyui的自动分页表格以及行编辑模式edatagrid
- 关于Js、jq css html常用属性的笔记