如何正确使用Cocoapods
一.介绍Cocoapods
Cocoapods是引入为项目引入新血液的接口,只有引入了新血液,功能才可以多样化,进而满足不同的消费群体。使用Cocoapods可以方便日后对项目的管理,是工程师在工作效率上提升的必杀技。做一个完美的APP,不是为了实现功能便可以放松警惕,而是在日后回头看我的功能时更容易管理与维护,以至于提升。那么跟着我来如何使用Cocoapods。
二.安装Cocoapods
苹果系统的内核Linux系统,所以我们在使用任何操作时,都是在潜移默化的学习Linux系统的操作过程。苹果系统的终端Terminal是基于Shell命令的一款和电脑交互的设备,使用Shell命令便可以进行操作。
当我们在Terminal使用Cocoapods时,首先需要保证电脑里已存在Cocoapods,在Terminal中输入pod命令,若出现字符如图所示1.1,
图1.1
则证明系统中不存在Cocoapods,那么需要先安装Cocoapods。如果已经翻墙,直接输入命令sudo gem install cocoapods。如果没有翻墙,那么我们需要先输入命令gem sources –remove https://rubygems.org/ 如图1.2所示,
图1.2
然后输入命令gem sources -a https://ruby.taobao.org/ 如图1.3所示,
图1.3
等待片刻后,我们可以来验证镜像Ruby,输入命令gem sources –l如图1.4所示,
图1.4
若出现*** CURRENT SOURCES *** http://ruby.taobao.org/以上字符,可以验证以上命令输入成功。接着,我们在Terminal中继续输入命令sudo gem install cocoapods等待片刻,运行结束后,输入pod,若出现pod的提示命令如图1.5所示
图1.5
那么我们的pod安装成功了。
三.使用Cocoapods
安装成功后,我们要来具体使用Cocoapods,首先我们应该确认对哪个项目进行pod,先打开要操作的项目,对要操作的xcodeproj格式文件拖拽到Terminal中,此时会发现终端上多出了一行/Users/apple/Desktop/myproject/ myproject.xcodeproj,我们注意,“/”后面是具体文件,我们只要获取的是要操作的项目地址,删掉myproject.xcodeproj,并使用命令cd /Users/apple/Desktop/myproject/打开当前地址,当我们打开地址后,可以使用pwd命令查看地址是否正确,当地址正确时,输入命令pod init,进行pod初始化,只有初始化了pod版本,才能对此进行安装第三方库,更新等等。等待片刻后,会发现当前文件夹多出了podfile文件,打开文件,在target ‘myproject’ do与end之间输入想要引入的第三方库,在引入第三方库之前,我们需要判断此第三方库是否支持pod,以AFNetworking举例,在Terminal中输入命令pod search AFNetworking,如出现AFNetworking详细介绍,那么说明此三方库支持Cocoapods,然后在podfile文件中输入命令pod 'AFNetworking',保存并关闭podfile文件,继续在Terminal中输入命令pod update,便可以从github上获取AFNetworking了,等待片刻后,会发现当前文件夹多了几个文件,不需要管他们,此时我们打开名为myproject.xcworkspace的文件后,会发现左侧多出了几个文件夹,比如Pods,而这个文件夹就是我们以pod为基石所初始化出来的文件夹。
四.验证
打开当前文件夹中的xcworkspace格式文件,在ViewController中书写代码#import <AFNetworking.h>引入AFNetworking,此时pod使用成功。引入成功后,我们写几句代码来验证下AFNetworking到底可不可用。
步骤:
1.首先在视图上添加一个imageView,用来显示从网络上获取的图片资源。
2.所谓进行网络之间的发送、下载都是进行http交互功能,http是数据交互的开始,所以我们在进行下载图片前,需要写一个请求功能,请求与网址进行交互。
3.在写好请求功能后,我们开始建立任务,创建任务并调用其方法,在方法里面分别有几个block回调,分别是进程,结果,错误等回调,在回调方法里写好相应的代码后,通过转换成image,赋值给imageView,由于创建的任务默认被挂起,可理解为暂停服务,所以我们要手动开启服务,开启后,测试结果可发现下载成功,我们调用AFNetworking成功。
具体代码如下:
UIImageView *imageView = [[UIImageView alloc]initWithFrame:CGRectMake(, , , )];
[self.view addSubview:imageView];
NSURLSessionConfiguration *configuration = [NSURLSessionConfiguration ephemeralSessionConfiguration];
AFURLSessionManager *manager = [[AFURLSessionManager alloc]initWithSessionConfiguration:configuration]; NSString *path = @"http://pic15.nipic.com/20110630/6322714_105316715314_2.jpg";
NSURL *URL = [NSURL URLWithString:path];
NSURLRequest *request = [NSURLRequest requestWithURL:URL];
NSURLSessionDownloadTask *task = [manager downloadTaskWithRequest:request progress:^(NSProgress * _Nonnull downloadProgress) { } destination:^NSURL * _Nonnull(NSURL * _Nonnull targetPath, NSURLResponse * _Nonnull response) {
NSURL *downloadURL = [[NSFileManager defaultManager]URLForDirectory:NSDocumentDirectory inDomain:NSUserDomainMask appropriateForURL:nil create:NO error:nil];
return [downloadURL URLByAppendingPathComponent:[response suggestedFilename]];
} completionHandler:^(NSURLResponse * _Nonnull response, NSURL * _Nullable filePath, NSError * _Nullable error) {
/** 此处已经在主线程了 */
UIImage *image = [UIImage imageWithData:[NSData dataWithContentsOfURL:URL]];
imageView.image = image;
}];
/** 默认下载操作挂起,需要手动调用下载 */
[task resume];
原文链接:http://blog.tingyun.com/web/article/detail/938
如何正确使用Cocoapods的更多相关文章
- iOS中 快速正确的安装 CocoaPods
有问题或技术交流可以咨询!欢迎加入! 第一部分: CocoaPods 的安装 步骤1 - 安装 RVM RVM 是干什么的这里就不解释了,后面你将会慢慢搞明白. $ curl -L https://g ...
- 最新的 cocoaPods 安装方法
经过努力终于发现了最新的 解决cocoaPods安装的办法: taobao Gems 源已停止维护,现由 ruby-china 提供镜像服务 第一步:安装rvm, 不管需不需要升级ruby,rvm可以 ...
- CocoaPods的安装、使用、以及遇到的问题
CocoaPods是什么? 当你开发iOS应用时,会经常使用到很多第三方开源类库,比如JSONKit,AFNetWorking等等.可能某个类库又用到其他类库,所以要使用它,必须得另外下载其他类库,而 ...
- 【译】使用 CocoaPods 模块化iOS应用
原文翻译自:Using CocoaPods to Modularize a Big iOS App 为你的移动应用选择正确的架构是一件相当大的事情,这会对你的工作流程造成影响,陷入面对的问题,可能是一 ...
- iOS CocoaPods 版本安装问题
今天安装salesforce中的pods,这是里面的podfile # Uncomment this line to define a global platform for your project ...
- 安装cocoaPods的详细步骤
先大概说下安装的步骤: Xcode 这个是开发必须的, HomeBrew RVM Ruby CocoaPods 一.HomeBrew: 打开官网链接:http://brew.sh/index_zh-c ...
- 2016最新cocoapods安装流程,安装过程中遇到的问题及解决方法
现在的cocoapods与之前比较.有很多不一样的地方.自己试了一试,终于搞定.现在大概纪录一下. 1.首先查看ruby是否是最新版的. ruby是通过rvm安装的所以需要先安装rvm后查看ruby是 ...
- CocoaPods安装及使用详情
CocoaPods是什么? 当你开发iOS应用时,会经常使用到很多第三方开源类库,比如JSONKit,SDWebImage等等.可能某个类库又用到其他类库,所以要使用它,必须得另外下载其他类库,而其他 ...
- [转]CocoaPods安装和使用教程
转载地址:http://code4app.com/article/cocoapods-install-usage 目录 CocoaPods是什么? 如何下载和安装CocoaPods? 如何使用Coco ...
随机推荐
- [python IDE] 舒服的pycharm设置
个人使用的IDE有国产的ulipad,sublime text 3 ,或者vs集成下的,不过讲到好用跨平台,还真是只有pycharm 写python最舒服,一个是因为有社区版,免费,不存在版权问题,另 ...
- 使用Microsoft Fakes进行单元测试(1)
一:什么是单元测试 单元测试是对软件进行准确性验证的步骤.单元测试并不进行整个软件功能的测试,仅仅是对于最小工作单元的测试.一般最小工作单元就是指方法/函数等. 这里并不打算对单元测试的概念及基础进行 ...
- SQL--子查询
什么是子查询 子查询:顾名思义,在一个查询中,有另外一个查询,这个查询就叫做,主查询的子查询. [把一个查询的结果,在另一个查询中使用就叫子查询.(将一个查询语句,作为一个结果集,供其他SQL语句使用 ...
- 2013最新版Subversion 1.7.10 for Windows x86 + Apache 2.4.4 x64 安装配置教程+错误解决方案
一 .工作环境 操作系统:Windows Server 2008 R2 SP1 x64 Apache版本:2.4.4 Subversion版本: Setup-Subversion-1.7.10.msi ...
- Android去掉listView,gridView等系统自带阴影
当我们使用listView的时候,拉到顶,或是拉到底部的时候,我们会发现有系统自带的阴影效果出现,不同手机出现的颜色可能还会不一样. 在以前我始终都有注意到此问题,一直以为是系统自带的,不能去掉.也没 ...
- Wojilu学习笔记 (01)
“我记录”开发框架(wojilu framework) 是 .net 平台下的综合开发框架,主要用于 web 方面的快速开发. 官方网址:http://www.wojilu.com源码托管网址: ht ...
- Note: This element neither has attached source nor attached Javadoc and hence no Javadoc could be found.
在Eclipse中开发Android项目时,鼠标停放在想要查看帮助文档的类上面,发现没有显示帮助文档,显示了下面一句话: Note: This element neither has attached ...
- Android版的菜谱客户端应用源码完整版
Android版的菜谱客户端应用源码完整版,这个文章是从安卓教程网转载过来的,不是本人的原创,希望能够帮到大家的学习吧. <ignore_js_op> 152936qc7jdnv6vo0c ...
- 【书籍下载链接】_1_第一轮_C语言书籍
各位朋友,如果您觉得下载的电子书,看的还可以,请购买纸质版的图书,如果您觉得 您下载的书,不值得一看请在下载后直接删除. Windows汇编:http://dl.vmall.com/c0jk1v970 ...
- qt (5.60/5.70) 编译 QOCI 驱动
转载请注明原文链接http://www.cnblogs.com/majianming/p/5925105.html 在学习qt过程中,遇到了编译oracle驱动的问题,在开源协议下没有编译好的,那就只 ...