Android项目中创建编译期的注解
==注解
生命周期为RetentionPolicy.RUNTIME,可在运行时通过反射获取。
生命周期为RetentionPolicy.CLASS, 编译期处理的注解,可以使用APT(Annotation Processor Tool)处理。
==Android项目中创建编译期的注解
-processor依赖。建立Java module,如testproccessor,并在app的gradle-dependencies中注册:annotationProcessor project(':testproccessor’)
-annotation依赖。建立Java module,如testannotation,并在testproccessor的gradle-dependencies中注册。processor依赖不会检查自身的注解,因此需要单独写annotation依赖。
-processor实现。在testproccessor中建processor 继承AbstractProcessor, 复写init/getSupportedAnnotationTypes/getSupportedSourceVersion/process方法。其中,process方法只有在注解得到应用时才会执行。具体实现见参考。
参考