說明:Android Studio原本是不支持註解處理器的,這個插件可以自動的幫程序員為生成的代碼創建目錄, 讓生成的代碼編譯到APK裏面去, 而且它還可以讓最終編譯出來的APK裏面不包含註解處理器本身的代碼, 因為這部分代碼只是編譯的時候需要用來生成代碼, 最終運行的時候是不需要的。
1、使用這個插件很簡單, 首先在項目頂層的build.gradle文件中添加依賴項, 如下:
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.5.0'
classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
}
}
2、然後在app的build.gradle裏面添加插件的引用以及需要依賴哪些庫, 如下:
apply plugin: 'com.android.application'
apply plugin: 'com.neenbedankt.android-apt'
...
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:22.2.1'
compile 'la.dahuo:command:1.0.0'
apt 'la.dahuo:command-codegen:1.0.0'
}
註意上面的apt ‘la.dahuo:command-codegen:1.0.0’, 這裏表示引用壹個註解處理器的庫, 這個庫的代碼最終不會進入編譯出來的APK裏面。
3、使用註解生成代碼, 上面出現的庫la.dahuo:command。la.dahuo:command-codegen就是我根據命令設計模式(Command Design Pattern)寫的壹個註解庫, 它用來讓我們方便的生成代碼, 看下用法:
定義Command
@CommandDef("commandName")
public class MyCommand extends Command {
@Param
String paramStr;
@Param("paramIntName")
int paramInt;
@Override
public void execute() {
// do something with params
}
}