- 博客(15)
- 资源 (3)
- 收藏
- 关注
转载 关于iOS的后台下载和断点续传,说一说自己的理解
http://blog.csdn.net/openglnewbee/article/details/53887308首先,后台下载和断点续传是两件事;这里放在一起说是为了图个方便,实际二者在技术实现上没有什么关联。目前我们的下载实现一般都是基于nsurlsession和iOS7+的,所以我们这里不考虑iOS6和以前的老系统,主要技术实现也是基于nsurlsessio
2017-03-28 20:34:50 717
转载 HTTP协议之multipart/form-data请求分析
首先来了解什么是multipart/form-data请求:根据http/1.1 rfc 2616的协议规定,我们的请求方式只有OPTIONS、GET、HEAD、POST、PUT、DELETE、TRACE等,那为为何我们还会有multipart/form-data请求之说呢?这就要从头来说了。http协议大家都知道是规定了以ASCII码传输,建立在tcp、ip协议之
2017-03-28 19:23:15 638
转载 iOS上传图像到服务器,以及服务器PHP接收的几种方法
iOS上传图像到服务器,以及服务器PHP接收的几种方法1. 将图片转换为Base64编码,POST上传。PHP将Base64解码为二进制,再写出文件。缺点:不能上传较大的图片// iOS(Swift)func upload(image: UIImage, url: String) { let imageData = UIImageJPEGRepresentation(imag
2017-03-28 17:29:44 1232
转载 iOS-NSString-Base64String-Base64原理
1 NSString * sourceString = @"test"; 2 3 NSString *base64String = [[sourceString dataUsingEncoding:NSUTF8StringEncoding] base64EncodedStringWithOptions:NSDataBase64Encoding64CharacterL
2017-03-28 16:27:59 614
转载 iOS 界面卡顿原因
http://www.jianshu.com/p/59980004ac95第一. 界面卡顿的原因在 VSync[1] 信号到来后,系统图形服务会通过 CADisplayLink 等机制通知 App,App 主线程开始在 CPU 中计算显示内容,影响因素:对象创建;对象调整;对象销毁;布局计算;Autolayout;文本计算;文本渲染;图片的解码;图像的绘制.
2017-03-27 11:19:46 4692
原创 空指针解引用会崩溃
- (BOOL)doSomeThing:(NSError **)err { *err = [NSErrorerrorWithDomain:@"123"code:101userInfo:nil]; returnYES;} 如果调用方不关心错误输出放回,这样调用会崩溃,[self doSomeThing:nil]; 所以在解引用之前要判断一下if(e...
2017-03-26 16:22:59 980
转载 iOS开发 之 不要告诉我你真的懂isEqual与hash!
http://www.jianshu.com/p/915356e280fc目录为什么要有isEqual方法?如何重写自己的isEqual方法?为什么要有hash方法?hash方法什么时候被调用?hash方法与判等的关系?如何重写自己的hash方法?为什么要有isEqual方法?isEqual
2017-03-25 17:04:16 355
原创 init 及 dealloc 方法访问成员变量应通过 直接访问
原因是类A,有属性NSString lastName,默认初始化方法把self.lastName设置为@""。类sunA继承自类A,且重写了setLastName,过滤新值,比如不等于liyun那么就抛出异常。这时,sunA alloc] init ] 执行时调用类A的init,类A init又调用类sunA重写的setLastName,在内部抛出异常,所以不应该通过属性访问,应直接访问。
2017-03-25 16:03:56 327
原创 oc block 中直接引用成员变量 循环引用
问题的答案是一定会发生循环引用。那解决方式: __weak typeof(self) wself = self;用wself访问成员变量就好。既然发生了循环引用一定是retain了self了,那又是为什么block不retain成员变量指针会retain self 呢?原因是oc是动态语言,实例变量的地址可能被其他实例变量占用,直接引用的话容易出
2017-03-25 14:24:09 1277
转载 ios动态添加属性的几种方法
在ios运行过程中,有几种方式能够动态的添加属性。1-通过runtime动态关联对象主要用到了objc_setAssociatedObject,objc_getAssociatedObject以及objc_removeAssociatedObjects[objc] view plain copy//在目
2017-03-25 13:47:40 802
转载 数据结构(六)——二叉树 前序、中序、后序、层次遍历及非递归实现 查找、统计个数、比较、求深度的递归实现
http://blog.csdn.net/fansongy/article/details/6798278/一、基本概念每个结点最多有两棵子树,左子树和右子树,次序不可以颠倒。性质:1、非空二叉树的第n层上至多有2^(n-1)个元素。2、深度为h的二叉树至多有2^h-1个结点。满二叉树:所有终端都在同一层次,且非终端结点的
2017-03-24 14:00:53 221
转载 .a和.framework的区别
一、库: 库是共享程序代码的方式,一般分为静态库和动态库二、静态库与动态库的区别: 静态库:连接时完整地拷贝至可执行文件中,被多次使用就有多份冗余拷贝。 动态库:连接时不复制,程序运行时由系统动态加载到内存,供程序调用,系统只加载一次,多个程序共用,节省内存。三、iOS静态库形式和动态库形式: 静态库:.a和.framework 动态库:.dylib和.fram
2017-03-19 16:30:31 2404
原创 NSOprationQueue 与 GCD 的区别与选用
GCD 技术是一个轻量的,底层实现隐藏的神奇技术,我们能够通过GCD和block轻松实现多线程编程,有时候,GCD相比其他系统提供的多线程方法更加有效,当然,有时候GCD不是最佳选择,另一个多线程编程的技术 NSOprationQueue 让我们能够将后台线程以队列方式依序执行,并提供更多操作的入口,这和 GCD 的实现有些类似。这种类似不是一个巧合,在早期,MacOX 与 iOS 的
2017-03-17 17:02:23 186
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人