android studio annotation 配置过程

参考了好些配置,发现总有这样,那样的问题。

环境:androidstudio 1.5 preview 2 sdk 6.0

1.首先新建一个android项目。

过程略

2.配置project的build.gradle

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.3.0'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files

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

allprojects {
    repositories {
        jcenter()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

其中红色为添加的部分,主要是使用apt插件。

3.配置module的build.gradle

apply plugin: 'com.android.application'
apply plugin: 'android-apt'
def AAVersion = '3.2+'
android {
    compileSdkVersion 23
    buildToolsVersion "23.0.2"

    defaultConfig {
        applicationId "com.joyfulmath.myannnotationsample"
        minSdkVersion 21
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

/**
 * AA注解Apt配置
 */
apt {
    arguments {
        androidManifestFile variant.outputs[0].processResources.manifestFile
        // if you have multiple outputs (when using splits), you may want to have other index than 0

        // You can set optional annotation processing options here, like these commented options:
        // logLevel 'INFO'
        // logFile '/var/log/aa.log'

    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    apt "org.androidannotations:androidannotations:$AAVersion"
    compile "org.androidannotations:androidannotations-api:$AAVersion"
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:appcompat-v7:23.1.0'
}  

红色为添加部分。

编译后,按理就可以使用annotation了。

4.使用annotation

 可以百度下。

5.常见问题

错误: Could not find the AndroidManifest.xml file, going up from path 

/**
 * AA注解Apt配置
 */
apt {
    arguments {
        androidManifestFile variant.outputs[0].processResources.manifestFile
        // if you have multiple outputs (when using splits), you may want to have other index than 0

        // You can set optional annotation processing options here, like these commented options:
        // logLevel 'INFO'
        // logFile '/var/log/aa.log'

    }
}

如果在module下的build.gradle没有配置,就会有这个问题。

 

参考文档:

http://blog.csdn.net/caiwenfeng_for_23/article/details/45801151

http://apkdemo.com/gradle/

http://blog.csdn.net/wa991830558/article/details/41647781

https://github.com/excilys/androidannotations/wiki/Building-Project-Gradle

 

posted on 2015-11-04 12:21  Joyfulmath  阅读(2873)  评论(0编辑  收藏  举报

导航