this post is featured

iOS开发之DNS劫持

前言 DNS劫持指在劫持的网络范围内拦截域名解析的请求,分析请求的域名,把审查范围以外的请求放行,否则返回假的IP地址或者什么都不做使请求失去响应。 编辑:Bison 来源:SindriLin的小巢 DNS劫持的主要表现为看视频,点击之后莫名其妙的跳到了某些广告网站。正常情况下,当我们点击某个链接的时候,会向一个称作DNS服务器的东西发出请求,把链接转换成机器能够识别的ip地址,其过程如下:...…

this post is featured

iOS开发优化篇之卡顿检测

编辑:Bison 来源:SindriLin的小巢 前言: 在很早之前就有过实现一套自己的iOS监控体系,但首先是instrument足够的优秀,几乎所有监控相关的操作都有对应的工具。二来,也是笔者没(lan)时(de)间(zuo),项目大多也集成了第三方的统计SDK,所以迟迟没有去实现。这段时间,因为代码设计上存在的缺陷,导致项目在iphone5s以下的设备运行时会出现比较明显的卡顿现象。虽然instrument足够优秀,但笔者更希望在程序运行期间能及时获取卡顿信息,因此开始动手自己的卡顿检测方案。 获取栈上下文...…

this post is featured

iOS即时通讯进阶之CocoaAsyncSocket源码解析(Connect终)

前言: 本文承接自上篇:iOS即时通讯进阶 - CocoaAsyncSocket源码解析(Connect篇) 注:文中涉及代码比较多,建议大家结合源码一起阅读比较容易能加深理解。这里有楼主标注好注释的源码,有需要的可以作为参照:CocoaAsyncSocket源码注释...…

this post is featured

iOS即时通讯进阶 - CocoaAsyncSocket源码解析(Connect篇)

前言: CocoaAsyncSocket是谷歌的开发者,基于BSD-Socket写的一个IM框架,它给Mac和iOS提供了易于使用的、强大的异步套接字库,向上封装出简单易用OC接口。省去了我们面向Socket以及数据流Stream等繁琐复杂的编程。 本文为一个系列,旨在让大家了解CocoaAsyncSocket是如何基于底层进行封装、工作的。 注:文中涉及代码比较多,建议大家结合源码一起阅读比较容易能加深理解。这里有楼主标注好注释的源码,有需要的可以作为参照:CocoaAsyncSocket源码注释 如果对该框架用法不熟悉的话,可以参考楼主之前这篇文章:iOS即时通讯,从入门到“放弃”?,或者自行查阅。...…