» September 01, 2016 Debug
前言
以前听过僵尸对象,原来只是觉得大概是内存没有被引用,但是依然没有被覆写的状态。
NSZombie Object
Cocoa提供了“僵尸对象(NSZombie Object)”功能。启用这个功能之后,运行期系统会把所有已经回收的实例转化成为特殊的“僵尸对象”,而不会真正回收它们(大概...
» August 09, 2016 iOS
前言
这次项目升级,用到了instruments进行Memory Leaks的排查。因为效果很明显,特地整理下来。
instruments
为了能够充分发挥instruments的功能,特地把Apple的相关文档看了一遍,确认了Memory Leaks排查的方法。
To investi...
» July 17, 2016 CocoaPods
瞎扯
把家里的MBPR升级了10.11,之前几款软件就不能用了,国内的软件版权保护工作的确做得不错,只好google关键字”XXX(软件名) crack”,重装这几款软件。
要命的是Xcode趁我不注意竟然自动升级到传说中坑爹的7.3,懒得退回。不过有几款插件貌似不好用,VVDocumen...
» July 11, 2016 iOS
前言
聊得时候遇到这么个问题:实现上千对象的存储到字典(OC下就是NSDictionary)时,如果出现效率低下的问题,可能是什么原因?一脸懵逼啊,后来才知道重点在于NSDictionary的实现(hash算法及冲突的解决)。
hash算法及冲突的解决
NSDictionary(字典)是...
» July 05, 2016 JSPatch
前言
JSPatch用的越来越广泛。先记录下集成及使用的方式。由于公司没有提供专门的接口获取js脚本,而且也没有安全的访问方式,所以还是先试用JSPatch平台来实现吧。官方的文档写的很清楚,只记录遇到的坑。
集成
坑一:
我下载的时候提示是这个样子。
我还纳闷怎么没有压缩,于是...
» July 03, 2016 Swift
单例对象可以我们使用一个类获取对象时,多次创建对象或者多次获取对象,得到的都是同一个对象。无论使用音频特效还是网络工具,我们都可以在我们的应用中使用统一的方式来获取单例资源或服务。
OC下的单例
OC中可以通过在 dispatch_once 函数的Block中调用初始化方法来实现单例。
...
» June 29, 2016 Swift
前言
今天被打击了。
凡事往前看。
回来继续混编。不要以为熟悉了OC和UIKit,看看Swift语法就可以无缝接入Swift开发,至少这个坑填了好一会。真正没有用过Swift的人,才会觉得Swift简单吧。相比OC语法更简练,同时吸收了多门流行语言的优点,可选绑定和 guard 的用法看的我...
» June 27, 2016 CocoaPods
前言
Cocoapods是比较好用的第三方框架管理工具。唯一蛋疼的是速度update的时候速度太慢,当然是用离线模式(–no-repo-update)可以加快速度,但是真正需要更新的时候,真的就只能花半天时间喝茶聊天了。好消息是1.0的版本明显减少了update的时间,实在忍不住去升级。
...
» June 16, 2016 iOS
背景
首先吐槽一下,最近公司接了几个功能相似的外包项目,整天累死累活真成了外包码农了。虽说奖金丰厚,但是这么着下去还真不是办法。
思路
功能相似,那就需要尽可能的多复用代码,目前考虑到的最理想的方案是基于multiple targets,就是利用多个target编译成不同的项目。这对于简...
» April 29, 2016 iOS
前言
在调试iOS 9.3版本的时候遇到了Could not find Developer Disk Image问题。之前每次升级都会遇到这个问题,但是都没有整理,这次整理一下。
Could not find Developer Disk Image是由于真机系统过高或者过低,Xcode中...