Aspects源码分析

最近有个需求用到了Aspects这个库,用的过程中发现了一些问题,为了解决问题,花了几天时间精读了一遍Aspects的源码。读的过程中发现这个库如果发散着去读,可以了解Objective-C这个语言的方方面面。这篇文章就不发散了,本篇集中记录Aspects如何去进行Hook方法的。后面可能会写一些Aspects发散的文章。本篇分析采用从入口方法开始,然后用到哪个方法会分析哪个方法。 Aspects入口方法 Aspects为NSObject写了一个分类,添加了两个方法,一个是类方法,一个是实例方法,方法名都一样,具体方法如下: +... »

Author image iOS

初识iOS中的动态库和静态库

由于最近研究组件化后调试时二进制映射源码的功能,发现需要对开发中的动态库和静态库需要有一些了解。所以就有了这篇文章,由于只是了解,并没有深入到编译层面,所以本篇文章只是简单了解一些库的知识,并不深入。 静态库 vs 动态库... »

Author image iOS

Ghost S1复刻 & Hackintosh

由于年初疫情的原因,去年装的黑苹果终于可以用来干点正事了(关于去年的黑苹果配置可以看前一篇文章),在家办公一直使用黑苹果来开发。疫情渐渐远去,慢慢开始复工,复工后又开始用19年13寸中配的MBP办公。没有对比就没有伤害,没用黑苹果之前也没感觉这台笔记本会这么慢,编译一次项目2分钟的时长实在忍不了。经过权衡决定组装一台黑苹果在公司用。 这次装电脑又两个需求,一个是在公司用,另外一个是老家没电脑,每次放假回家都很无聊,所以希望这台电脑可以放假带回家用。有了便携这个需求,所以主机肯定是ITX的机型了。组ITX主机需要先去选机箱,然后根据机箱找合适的配件。正好同事推荐了Ghost S1复刻这个机箱,A4机箱,很满意,就是价格略贵。最后还是咬咬牙买了下来。机箱确定了,其他配件就好说了,最后敲定配置如下: 配件... »

WKWebView离线包开发小记

随着项目里面Web页面内容越来越多,H5的加载速度变得越来越重要。在H5同学提出需求前就看过有关优化的文章。当时没有细致的去看,本来以为做起来轻车熟路,但是真做起来坑还是不少。下面记录一下整个优化过程。 优化思路 一个WebView加载的过程大约有以下几个步骤(内容来自于腾讯Bugly的文章): 初始化... »

近期黑苹果折腾小记

一直以来都想装一台黑苹果折腾一下,去年10月终于组装了一台。在近期也把电脑折腾完美了。配置如下: 主板 技嘉Z390m GAMING... »