2013-07-28 4 views
8

Я пытаюсь добавить AndroidAnnotations в проект студии Android, который имеет систему построения градиента. Кто-нибудь сделал это? Кто-нибудь может мне с этим помочь? Я даже не знаю, с чего начать. Я знаю, как добавлять библиотеки в градиент, но для AndroidAnnotations требуется два файла jar, и я не знаю, что делать.Android studio + Gradle + Android Аннотации

ответ

13
After 4 months I am 4 months older and a little smarter :) If you want to use  
Annotations in Android use http://jakewharton.github.io/butterknife/. 
It is way better and it is easy to set up :) 

Вот что вам нужно сделать:

  • Вам нужно изменить файл build.gradle (построить файл для модуля приложения)

Первых добавить кинжал и аннотации версии , Вы также можете объявить их в зависимостях. Это более удобно, если у вас много зависимостей.

ext.daggerVersion = '1.0.0'; 
ext.androidAnnotationsVersion = '2.7.1'; 

configurations { 
    apt 
} 

Добавить зависимостей:

dependencies { 

apt "com.googlecode.androidannotations:androidannotations:${androidAnnotationsVersion}" 
compile "com.googlecode.androidannotations:androidannotations-api:${androidAnnotationsVersion}" 
apt "com.squareup.dagger:dagger-compiler:${daggerVersion}" 
compile "com.squareup.dagger:dagger:${daggerVersion}" 

} 

Finnaly, добавьте это. Это добавляет путь для компилятора и создает каталог для создаваемых файлов (это реж будет называться apt_generated):

android.applicationVariants.each { variant -> 
aptOutput = file("${project.buildDir}/source/apt_generated/${variant.dirName}") 
println "****************************" 
println "variant: ${variant.name}" 
println "manifest: ${variant.processResources.manifestFile}" 
println "aptOutput: ${aptOutput}" 
println "****************************" 

variant.javaCompile.doFirst { 
    println "*** compile doFirst ${variant.name}" 
    aptOutput.mkdirs() 
    variant.javaCompile.options.compilerArgs += [ 
      '-processorpath', configurations.apt.getAsPath(), 
      '-AandroidManifestFile=' + variant.processResources.manifestFile, 
      '-s', aptOutput 
    ] 
} 
} 

О, да, и после того, как вы строите свою-анкету, вам нужно идти к проекту корня/строить/apt_generated , щелкните правой кнопкой мыши по папке и установите «Отметить как исходный корень»

+0

Это сработало! большое спасибо! – John

+2

Зачем нужен кинжал? Это как-то связано с аннотациями Android? –

+1

- это аннотация, загружаемая автоматически, или мне нужно ее добавить? себя? –