- 博客(21)
- 收藏
- 关注
原创 Python学习(python2.7.10)
python 施工笔记1:中文编码,文件开头指定编码格式,不会出现中文乱码# -*- coding:utf-8 -*-
2017-12-07 22:31:13
259
原创 AFNetworking3.1.0源码分析(十四)AFHTTPSessionManager
AFHTTPSessionManager功能如下图所示:
2017-01-20 12:47:11
323
原创 AFNetworking3.1.0源码分析(十三)AFURLSessionManager
AFURLSessionManager功能结构如下图所示:
2017-01-20 12:46:19
341
原创 AFNetworking3.1.0源码分析(十二)AFURLResponseSerialization
AFURLResponseSerialization 和 AFURLRequestSerialization 是一对出现在网络处理中,AFURLResponseSerialization主要负责对网络请求完成之后返回的结果做解析处理。分析AFURLResponseSerialization.h 可得到,相关类的结构如下图所示:
2017-01-15 18:44:54
338
原创 AFNetworking3.1.0源码分析(十一)之AFSecurityPolicy验证服务器信任
通过上篇文章总体的了概述了AFSecurityPolicy的功能。先了解下数字证书和原理,这篇文章非常详细的讲解了证书以及认证的原理。下面继续详细分析AFSecurityPolicy验证服务器信任的过程涉及的方法:1:设置本地证书集合,和获取本地证书的公钥并创建公钥集合1.1设置本地证书集合- (void)setPinnedCertificates:(NSSet *)pin
2017-01-11 14:18:48
462
原创 AFNetworking3.1.0源码分析(十)之AFSecurityPolicy
AFSecurityPolicy提供以下功能:1:创建安全策略2:创建数字证书(客户端本地预置号的用来验证服务器的证书)3:验证服务器证书的有效性4:支持序列化下面分逐个介绍这些功能:AF提供的安全策略枚举值:typedef NS_ENUM(NSUInteger, AFSSLPinningMode) { AFSSLPinningModeNone,//客户
2017-01-11 10:31:04
364
原创 断点调试程序执行过程中执行的方法
使用命令:(void)instrumentObjcMessageSends(YES);例子使用模拟器运行:- (void)viewDidLoad { [super viewDidLoad]; (void)instrumentObjcMessageSends(YES); NSString *string = [NSString stringWithForma
2016-12-29 14:21:53
1743
原创 AFNetworking3.1.0源码分析(九)AFHTTPRequestSerializer 之解决调用Amazon S3 服务出现的bug
主要讲解AFHTTPRequestSerializer提供的三种创建NSMutableURLRequest的方式的第三种,前两种已经在之前介绍过,此方法专门是针对Amazon S3产生的问题解决/** 创建一个NSMutableURLRequest并删除request的HTTPBodyStream,在请求结束的回调中把数据异步的方式写到制定的文件中 Creates an `NSMutable
2016-12-21 20:59:10
403
原创 分析 for(;;){break} 和 while(1){break}
FORLOOP:Lfunc_begin0: @ BB#0: sub sp, #4 movs r0, #1 //存放立即数1到寄存器r0Ltmp0: str r0, [sp] //把r0中的数据传给spLBB0_1: @ =>This Inner Loop
2016-12-21 18:12:44
627
原创 AFNetworking3.1.0源码分析(八)AFHTTPRequestSerializer 之AFStreamingMultipartFormData下
本章接着上章继续讲解AFStreamingMultipartFormData设置上传文件(文本,图像,视频)时对请求的设置。1:首先说下在iOS网络请求中以POST/PUT形式发送请求是,设置请求体的两种形式:HTTPBody 和 HTTPBodyStreamHTTPBody:适用于普通的post/put请求(大部分接口请求都使用这种)因为发送的请求体占用的内存很少。HTTPBodyS
2016-12-15 17:59:10
619
原创 AFNetworking3.1.0源码分析(七)详解AFHTTPRequestSerializer 之AFStreamingMultipartFormData上
本文主要介绍关于AFNetworking中对文件上传的处理,涉及到的知识点:1:PUT 和 POST 方式的区别2:http MIMEType multipart/form-data3:如何手动实现文件上传功能(使用iOS NSMutableRequest,NSURLConnection或者NSURLSession)的请求对象创建和配置4:AFNetWorking 的封装实现提交
2016-12-13 17:27:01
1844
原创 AFNetworking3.1.0源码分析(六)详解AFHTTPRequestSerializer 之序列化NSMutableURLRequest
本文主要分析AFNetworking序列化NSMutableURLRequest1:AFNetworking支持三种media-type对应的http请求头字段Content-Type为:①application/x-www-form-urlencoded ②application/json③application/x-plist 在http请求中,请求方式为(GET,HEAD
2016-12-12 13:41:59
4058
原创 AFNetworking3.1.0源码分析(五)详解AFHTTPRequestSerializer 之创建NSMutableURLRequest
1:创建NSMutableURLRequest- (NSMutableURLRequest *)requestWithMethod:(NSString *)method URLString:(NSString *)URLString parameters:(id
2016-12-07 20:23:31
2682
原创 AFNetworking3.1.0源码分析(四)详解AFHTTPRequestSerializer 之初始化方法
1:类图介绍在AFHTTPSessionManager 初始化方法中可以看到 AFNetworking 默认使用的网络请求序列化类是AFHTTPRequestSerializer,一下是关于它的类图:2:类功能分析: 一:初始化函数:- (instancetype)init { self = [super init]; if (!self) {
2016-12-05 16:55:07
1925
原创 Object-c 中截取包含(中、英文、表情符号emojiicon)混合字符串的每个字符并获取此字符的unicode值
ios中的nsstring 使用utf16编码,当字符串中包含中、英文、特殊字符、emojiicon 的时候,使用常规的characterAtIndex:会出现错误,因为这种方式是一个单元的utf16编码位截取,当截取ascii范围内的字符时,每个单元的长度是1(utf16对应两个字节),对于其它特殊字符就不一样了,因此正确的方式应该是:字符串在网页上显示的不对,我截了个图:
2016-12-02 15:58:59
1408
原创 AFNetworking3.1.0源码分析(三)AFHTTPRequestSerializer 之AFQueryStringPair
介绍在发送请求之前需要配置request的各项参数,比如请求内容的编码,AFNetWorking中使用AFQueryStringPair类用来对网络请求数据进行编码(百分号编码)遵循rfc3986, AFQueryStringPair类通过函数NSString * AFPercentEscapedStringFromString(NSString *string){}实现编码。
2016-11-24 11:53:57
483
原创 iOS水波动画效果
1:实现原理:两条不同内填充色的波浪向相对方向平移,产生波动效果,使用的技术:CAShapeLayer,UIBezierPath2:实现效果3:实现步骤:画两条贝塞尔曲线,由于需要交叉产生效果,当前屏幕和屏幕外相同宽度的部分画线,然后按照固定的速度移动,每到移动到屏幕边缘的时候重新设置波浪线的路径,波浪的交叉重贴的部分产生的效果就是锁需要的效果具体实现代码如下:#impor
2016-11-21 19:31:57
2480
原创 iOS开发获取iphone,ipod,ipad,ipadmini 硬件类型名称
iOS开发获取iphone,ipod,ipad,ipadmini 硬件类型名称
2016-11-21 15:37:59
434
原创 AFNetworking3.1.0源码分析(二)AFURLSessionManager中的_AFURLSessionTaskSwizzling
在AFNetworking早期的版本中(2.0)中使用kvo监听NSURLSessionTask的state属性,达到对当前网络请求任务的状态的监控实现2.0版本的代码实现:1)创建datatask时候监听datatask的state:static void * AFTaskStateChangedContext = &AFTaskStateChangedContext;- (NSUR
2016-11-17 18:59:41
1007
原创 使用AVSpeechSynthesizer添加"文本转语音"的功能
AVSpeechSynthesizer播放一个或者多个语音内容:#import #import @interface TSSpeech: NSObject@property(nonatomic, strong, readonly)AVSpeechSynthesizer *speechSynthesizer;+ (instancetype)speechController;
2016-11-11 22:03:42
442
原创 AFNetworking3.1.0源码分析(一)整体框架和功能模块
简介AFNetworking 介绍:1:一个核心模块(NSURLSession)和其它四大模块共同协作完成整个网络操作的功能。2:核心类工作时序图(创建请求->发起网络请求->请求处理->请求结束->请求回调)
2016-11-07 21:26:13
1421
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人