随笔分类 -  iOS

摘要:阿里妹导读:刚刚,阿里巴巴正式对外开源了基于 Apache 2.0 协议的协程开发框架 coobjc,开发者们可以在 Github 上自主下载。coobjc是为iOS平台打造的开源协程开发框架,支持Objective-C和Swift,同时提供了cokit库为Foundation和UIKit中的部分A 阅读全文
posted @ 2019-03-05 18:32 zzfx 阅读(1083) 评论(0) 推荐(0)
摘要:总结:指定函数的调用规则; 初始化函数的调用顺序与初始化顺序相反。 上面关于指定初始化的规则讲了那么多,其实可以归纳为两点: 便利初始化函数只能调用自己类中的其他初始化方法 指定初始化函数才有资格调用父类的指定初始化函数 苹果官方有个图,有助于我们理解这两点: 当我们为自己创建的类添加指定初始化函数 阅读全文
posted @ 2019-02-22 19:42 zzfx 阅读(643) 评论(0) 推荐(0)
摘要:烂尾的原因是request的一致性比较接口没有开放出来。 阅读全文
posted @ 2019-02-22 16:03 zzfx 阅读(168) 评论(0) 推荐(0)
摘要:一、缓存策略: 1、缓存策略的配置: 缺省缓存策略的存储策略需要服务器的响应配置; 缺省缓存策略的使用需要请求端的配置; 2、缓存策略的缺陷: 移动端比较通用的缓存策略是先使用缓存同时更新本地数据; 缺省的缓存策略更多是同步确认后再使用本地缓存; 这就需要移动端对缓存策略进行定制;一方面把缓存数据从 阅读全文
posted @ 2019-02-22 15:19 zzfx 阅读(680) 评论(0) 推荐(0)
摘要:前言 开发中遇到需要获取SDK中的数据,由于无法看到代码,所以只能通过监听所有的网络请求数据,截取相应的返回数据,可以通过NSURLProtocol实现,还可用于与H5的交互 一、NSURLProtocol拦截请求 1、NSURLProtoco简介 NSURLProtocol的官方定义 An NSU 阅读全文
posted @ 2019-02-20 19:55 zzfx 阅读(2201) 评论(0) 推荐(0)
摘要:NSURLProtocol 的本质是对特殊的scechme进行特殊的协议定制; 网络(应用层)请求的统一入口是nsurlconnection和nsurlsession; http、htp、mail等协议都是; 如果是不存在的协议,比如 google://gohere.oo 需要自己在网络层的基础上进 阅读全文
posted @ 2019-02-20 19:23 zzfx 阅读(258) 评论(0) 推荐(0)
摘要:在aspect_add、aspect_remove方法里面用了aspect_performLocked, 而aspect_performLocked方法用了OSSpinLockLock加锁机制,保证线程安全并且性能高。不过这种锁已经不在安全,主要原因发生在低优先级线程拿到锁时,高优先级线程进入忙等( 阅读全文
posted @ 2019-02-16 00:21 zzfx 阅读(768) 评论(0) 推荐(0)
摘要:1、语言与系统; 2、架构与机制; 3、性能:cpu、gpu、io、缓存、内存;性能监测工具; 4、知名开源库; 阅读全文
posted @ 2019-01-31 16:37 zzfx 阅读(304) 评论(0) 推荐(0)
摘要:在 Android 上,Square 这家公司提供了非常有名的工具: leakcanary ,来帮助开发者们在日常开发过程中就能够发现内存泄漏。但在 iOS 上呢?在 Google 的时候,我发现了两个工具,一个是这篇文章将要翻译并介绍的 Facebook 开源的三件套,另一个则是国内微信阅读团队做 阅读全文
posted @ 2019-01-17 17:52 zzfx 阅读(347) 评论(0) 推荐(0)
摘要:共享可执行文件 iOS 有沙箱机制,不能跨App间共享共态库,但Apple开放了App Extension,可以在App和Extension间共间动态库(这也许是Apple开放动态链接库的唯一原因了)。 http://blog.lanvige.com/2015/01/04/library-vs-fr 阅读全文
posted @ 2019-01-16 16:13 zzfx 阅读(540) 评论(0) 推荐(0)
摘要:Locations for Public Frameworks Third-party frameworks can go in a number of different file-system locations, depending on certain factors. Most publi 阅读全文
posted @ 2018-09-21 19:11 zzfx 阅读(115) 评论(0) 推荐(0)
摘要:let components = URLComponents(url: fakeUrl, resolvingAgainstBaseURL: false)! http://10.100.140.84/m/cashboard/cost/02?yyyyMM=2018-06&tabFlag=02 - sch 阅读全文
posted @ 2018-09-13 18:15 zzfx 阅读(1185) 评论(0) 推荐(0)
摘要:By specifying NSAllowsArbitraryLoadsInWebContent, you are overriding NSAllowsArbitraryLoads on iOS 10. In iOS 10 and later, and macOS 10.12 and later, 阅读全文
posted @ 2018-09-07 10:38 zzfx 阅读(1290) 评论(0) 推荐(0)
摘要:How an Event Enters a Cocoa Application An event is a low-level record of a user action that is usually routed to the application in which the action 阅读全文
posted @ 2018-04-18 14:58 zzfx 阅读(266) 评论(0) 推荐(0)
摘要:NSRunloop是一个消息处理机制;是一个循环。 系统通过消息队列和runloop与进程(线程)通信。 runloop是一个机制和体系结构。 它包含以下几个方面: 1、事件源管理; 2、事件的检索与派发循环机制; 3、运行模式、嵌套运行; 4、线程间通信。 事件源 事件源包含以下几个方面: 1、流 阅读全文
posted @ 2018-04-18 11:25 zzfx 阅读(122) 评论(0) 推荐(0)
摘要:NSPort与NSRunloop的关系是流与消息调度的关系。 NSPort 将流插入到消息调度队列; 相当于 Socket将流插入到应用一样 - (void)launchThread { NSPort *myport = [NSMachPort port]; if(myport) { //让本类持有 阅读全文
posted @ 2018-04-17 16:22 zzfx 阅读(1655) 评论(0) 推荐(0)
摘要:在看博客 UITableView优化技巧 时想到列表的优化主要还是对图片的优化处理。 博文中介绍了按需加载、快速滑动时不加载、异步刷新等等技巧。 这里有个问题, 当我们实例化一个UIImage对象并为UIImageView的image赋值时, 到底有没有将jpg/png转换为bitmap格式呢? 答 阅读全文
posted @ 2018-04-16 18:13 zzfx 阅读(458) 评论(0) 推荐(0)
摘要:UIImage 缓存是怎么回事? 通过 imageNamed 创建 UIImage 时,系统实际上只是在 Bundle 内查找到文件名,然后把这个文件名放到 UIImage 里返回,并没有进行实际的文件读取和解码。当 UIImage 第一次显示到屏幕上时,其内部的解码方法才会被调用,同时解码结果会保 阅读全文
posted @ 2018-04-16 18:12 zzfx 阅读(284) 评论(0) 推荐(0)
摘要:首先,什么是Core Graphics和Quartz 2D? Core Graphics:是基于Quartz 2D绘图引擎的一个C语言的API绘图框架。它也是iOS开发中最基本的框架(Framework)之一。两点原因,第一是该框架是每一个iOS应用最初被建立时,就被系统默认添加的三个框架(Foun 阅读全文
posted @ 2018-04-16 11:18 zzfx 阅读(281) 评论(0) 推荐(0)
摘要:本文转自:http://blog.csdn.net/lxl_815520/article/details/51172917 一,概述 iOS的系统架构分为四个层次:核心操作系统层(Core OS layer)、核心服务层(Core Services layer)、媒体层(Media layer)和可 阅读全文
posted @ 2018-04-11 19:16 zzfx 阅读(886) 评论(0) 推荐(0)