iOS 开发之 Cocoapods
2016-01-12 14:29
281 查看
什么是Cocoapods 在iOS开发中势必会用到一些第三方依赖库,比如大家都熟悉的ASIHttpRequest、AFNetworking、JSONKit等。使用这些第三方类库能极大的方便项目的开发,但是,集成这些依赖库需要我们手动去配置,例如集成ASIHttpRequest库时除了加入源码以外还需要手动去添加一些系统框架,比如CFNetwork、MobileCoreServices等,如果这些第三方库发生了更新,还需要手动去更新项目。这就显得非常麻烦。有麻烦自然有解决办法,CocoaPods就是为了解决这个问题而生的。通过CocoaPods,我们可以将第三方的依赖库统一管理起来,配置和更新只需要通过简单的几行命令即可完成,大大的提高了实际开发中的工作效率,使我们的主要精力集中到更重要的事情上去。安装Cocoapodsmac系统自带ruby环境,有的教程让你重新装svm,然后利用rvm再装ruby,注意区分。下面的操作是在终端中操作的1、将ruby的原生镜像移除
$ gem sources --remove https://rubygems.org/[/code]最重要的是这句话:2、用淘宝的镜像代替这一步是因为国内有墙的限制,会造成安装cocoapods的过程变的十分慢,替换为淘宝的镜像速度会相对较快。$ gem sources -a https://ruby.taobao.org/[/code]安装结束以后会有如下提示3、查看是否设置成功$ gem sources -l如果输出结果是如下这样,那说明这一步就成功了。*** CURRENT SOURCES *** http://ruby.taobao.org/[/code]4、安装Cocoapods路径没有问题后运行$ sudo gem install cocoapods5、查看Cocoapods是否支持某个类库,只要能够查询到框架就表明这个这台电脑Cocoapods已经安装成功。$ pod search 类库名支持模糊查询(如:AFNetworking),如果下面显示出AFNetworking框架的各个版本就代表Cocoapods安装完成。Cocoapods相当于一款软件,在电脑上安装成功以后,以后就可以直接使用他来给项目集成框架。不需要重复上面的操作。在项目中如何使用Cocoapods我们通过集成MJRefresh类库来演示如何使用CocoaPods来做依赖库管理。首先,建立一个xcode工程,命名为CocoaPodsTest,现在的工程结构如下图所示。1、检查MJRefresh是否支持Cocoapods,支持模糊查询$ pod search mjrefresh出现Setting up CocoaPods master repo,说明Cocoapods正在将它的信息下载到 ~/.cocoapods里,保持这个终端不动,新打开一个终端,cd到该目录里,用du -sh 命令来查看文件大小,每隔几分钟查看一次,我的这个目录最终大小是211M,就是完成了。如果不成功,在下面会显示一个git的网址,在这个网址下载相应的文件放在~/.cocoapods相应的文件夹便可。 *执行后通过输出结果可以看到mjrefresh是支持CocoaPods的,注意红框标记的内容,这是待会我们配置xcode时需要的信息,这条配置项就是告诉CocoaPods去下载和管理第三方库的哪一个版本。MJRefresh库的把版本信息2、检测完毕后我们在终端里来到工程CocoaPodsTest的目录下。$ cd /Users/GG/Desktop/CocoaPodsTest 我这里是放在GG用户的桌面上了。你们需要改成你们自己的路径。3、 管理第三方库的PodFile文件$ vim Podfile利用终端运行以上代码会在工程里打开一个名为Podfile(注意大小写)的文件。如果有这个文件会在终端中打开,如果没有这个文件会新建后打开。这个Podfile文件的作用是配置依赖库信息,就是告诉CocoaPods去下载和管理哪些依赖库。4、在文件里写入你想用的框架。 文件创建好以后,需要写的内容就是在上图中的红圈表示的信息。版本号可以根据自己的需求改变。vim打开文件后按i进入插入模式,编辑完成后按esc退出编辑模式,接着输入:wq保存并退出文件。保存以后可以在C文件夹里验证一下是否有Cocoapods这个文件。下图中我写了好几个框架。在Podfile文件里写入你想用的框架5、将第三方库集成到项目中 如果之前的全部工作都完成了,工程目录下就会有一个Podfile文件了,注意必须和.xcodeproj在同一个目录下。接下来就可以使用CocoaPods来安装并管理JSONKit库了,首先确保终端当前路径是在CocoaPodsTest目录下。$ pwd 可以查看当前终端所处的路径。$ pod install 将Podfile文件中的第三方库集成在项目中。Analyzing dependenciesDownloadi4000ng dependenciesInstalling MJRefresh (3.0.8)Generating Pods projectIntegrating client project[!] Please close any current Xcode sessions and use `CocoaPodsTest.xcworkspace` for this project from now on.Sending statsPod installation complete! There is 1 dependency from the Podfile and 1 totalpod installed.
请关闭Xcode,从此使用CocoapodsTest.xcworkspace打开项目Please close any current Xcode sessions and use `CocoaPodsTest.xcworkspace` for this project from now on.6、通过xcoworkspace打开项目通过xcoworkspace打开项目的目录结果会多出一个名为Pods的依赖工程,打开/Pods/Pods文件夹后,能找到我们在Podfile写的各种第三方库。7、至此用Cocoapods管理第三方框架的所有工作做完。 如果需要依赖多个第三方类库,只需要修改Podfile文件的配置,然后运行pod update命令即可,比如新增一个AFNetworking的依赖库,首先执行pod search AFNetworking查看一下AFNetworking的配置信息,修改Podfile文件,在后面增加AFNetworking的对应配置信息,然后运行pod update命令就完成了对AFNetworking的集成。
扩展:
如果需要其他第三方框架,就只需要使用者几步就行了。
1、工程路径 cd -> 把taget拖到终端 去掉最后一个斜杠 2、创建Podfile -> touch Podfile 3、搜索要安装的第三方 把pod命令拷贝到Podfile文件 :pod 'APProgressHUD', '~> 1.1.2' 4、安装 -> pod install --verbose --no-repo-update 出现[!] Please close any current Xcode sessions and use `1-12课上.xcworkspace` for this project from now on. 表示成功
相关文章推荐
- Android Studio使用教程(五):Gradle命令详解和导入第三方包
- Java在制作jar包时引用第三方jar包的方法
- 2016最新CocoaPods安装和错误解决方案
- 2016 cocoapods的安装和使用方法以及版本升级遇到的问题
- Laravel中使用自己编写类库的3种方法
- 详解2016 cocoapods的安装和使用以及版本升级遇到的问题
- iOS平台UDID方案比较
- Java桌面程序打包成EXE可执行文件
- 无线路由器的非商业的第三方固件DD-WRT
- 将nginx同时作为负载均衡和Web缓存服务器
- RHEL/CentOS系统的社区维护资源整合
- HTML5 之美:推荐9款优秀的 HTML5 音乐播放器
- RHEL6.2配置本地yum源和第三方源
- Nginx学习(一)安装及基本功能
- Asp.net自定义播放器控件
- 支持QQ2010版协议的pidgin插件
- 比20年工资还重要的......
- 破解思科光模块限制-转自生活小记
- Linux系统下常用RPM包搜索网站
- IOS 开源框架及项目包