又到一年七夕节,祝愿全天下的有情人终成眷属。 一直以来项目中都是使用别人的框架,使用起来很熟练,但是源码一般都是大致粗略的看一下,弄懂整个流程就不去管他了,这段时间我都是在跟源码打交到深有体会,除非知识有一定的沉淀,否则学到的终究只是皮毛。所以打算想要学习的更深入,建议还是多多看源码,不光技术提升, ...
如何调试AbstractProcessor
背景由来在自定义ButterKnife时,通过APT方式生成Java代码,因为是编译时期生成,我们无法像Android项目一般运行起来之后通过debug方式来调试,一旦项目无法调试,对于开发者来说是一件很痛苦的事情,下面我们介绍如何 debug 自定义 AbstractProcessor 项目准备阶 ...
EventBus巧用APT插件提升性能
在上一篇研究了EventBus源码时,默认情况下EventBus是通过在运行时反射的方式去获取订阅者中所有@Subscribe注解的方法信息,这种方式是比较损耗性能的。 EventBus是如何提升效率? 与Butterknife类似,采用编译时注解,在项目编译时将所有的订阅者注解的方法集中到生成cl ...
EventBus源码分析
EventBus简介EventBus是一种基于Android的事件发布-订阅总线。 EventBus官网描述: simplifies the communication between components decouples event senders and receivers perfor ...