当前位置: 代码迷 >> Android >> Android项目使用自定义Annotation的札记
  详细解决方案

Android项目使用自定义Annotation的札记

热度:63   发布时间:2016-04-27 23:15:43.0
Android项目使用自定义Annotation的笔记

现在android项目中使用注解提高开发效率的例子越来越多了,下面三个比较热门的开源库都用了注解简化代码:

Retrofit ? ? ? ? ? ? ? 使用Annotation实现符合 RESTful 规范的网络请求框架

Butter Knife ? ? ? ?使用Annotation实现?View 及事件等依赖注入框架

Active Android ? ?使用Annotation实现?ORM 框架

?

我在学习Annotation的过程中遇到了一些困惑,千辛万苦才搞清楚原因,就记在这里吧。

?

1、对AbstractProcessor的误解

? ? ?当我们解析自己定义的Annotation,需要做的

? ? ?? ?a. 自定义类继承自 AbstractProcessor

? ? ? ? b. 重写其中的 process 函数

? ? ?其中AbstractProcessor是Javax包提供的抽象类,我们定义的processor编译器自动调用,解析工作在重写的process函数中执行在这一步我发现android sdk的Javax包并没有包含AbstractProcessor,当时百思不得其解,直到在stackoverflow找到这个提问Android Studio Annotation AbstractProcessor Not Found?。

? ? ?造成困惑的原因还是对程序的编译打包理解不够透彻,因为AbstractProcessor只需要在编译时使用,而我们的应用在android系统是直接可以运行的,所以运行环境里当然不需要AbstractProcessor。

  相关解决方案