Android新手上路-Apt技术的相关笔记

来源:互联网 发布:无线网测试软件 编辑:程序博客网 时间:2024/06/07 02:35

因为只是为了粗略了解这项技术,所以这里省略大部分知识点,只记录关键信息。
参考这篇文章,相关步骤介绍的非常详细
总结下大概步骤和要点:
1.设计相关api,注解;
2.注解处理器的核心逻辑;
在依赖上,需要apt和com.google.auto.service。
编码阶段重点关注两个类:

javax.annotation.processing.AbstractProcessorjavax.tools.JavaFileObject

其次

javax.lang.model.element.*

继承AbstractProcessor并重写process(…)方法以实现注解处理器核心逻辑。
通过JavaFileObject来实现生成Java文件的操作。
element包下的内容比较少接触,用到的部分主要是通过它的实例来获得注解所在类的各种信息,具体查询Api即可。
此外我理解的生成代码的实质,就是通过流将字符串写入所创建的Java文件。所以生成的code部分可以通过拼接字符串,也可以通过一些第三方(比如开头的链接中介绍的JavaPoet )来实现。

最后通过模仿上面链接的文章实现了一个自己的ViewInject注解,没啥用就不贴代码了。