关于编译时注解

来源:互联网 发布:name.com域名备案 编辑:程序博客网 时间:2024/06/05 14:45

转自http://blog.csdn.net/liu470368500/article/details/51316066

(1)性能

编译时注解对比运行时注解的优势在于。它是在对程序进行编译时期。根据你的注解处理器的逻辑。处理该注解。并生成相应的java文件。提供给你调用。所以。使用编译时注解。你程序运行时。是使用的生成的普通java类来提供调用。而不是像运行时注解那样通过反射来调用。程序性能问题也就无从说起了。

(2)使用

首先。在项目根目录的build.gradle中。加入apt框架

classpath 'com.neenbedankt.gradle.plugins:android-apt:1.4'

然后。在要使用编译时注解框架的module中。应用apt插件。加入编译时注解框架引用

apply plugin: 'com.neenbedankt.android-apt'
dependencies {
compile 'org.lzh.compiler.lib:processortool-api:0.6'
apt 'org.lzh.compiler.lib:processortool-compiler:0.6'
}

compile 命令引用的是编译时注解框架的api。即项目中需要使用的注解。都是来自于这种库。
apt 命令是引用的编译时注解框架的注解处理器lib。在程序编译时。会调用该库中的注解处理器去进行注解处理。生成符合逻辑的java文件提供调用。

(3)项目引用APt打包的方法数
因为我们项目引进的其实只有api的lib(processortool-api)。对于注解处理器的lib(processortool-compiler)。那是提供给IDE使用的。并不会将compiler的jar打包到你的APK中去。这就是和一般的lib不一样的地方。当使用 apt添加添加依赖,它将不会被包含到最终的APK里.
原创粉丝点击