2013-05-16 26 views
19

Quindi volevo provare il nuovo Android Studio e importare i miei progetti di eclissi (ho generato un file di sviluppo gradle). Ha funzionato abbastanza bene.Android Studio: Usa AndroidAnnotations

L'unica libreria che non sembra funzionare è AndroidAnnotations. Ho selezionato il file androidannotations-2.7.jar in File> Impostazioni> Compilatore> Elaborazione annotazione.

Come directory di origine della produzione ho selezionato "gen". Ma il file generato come MainActivity_ non viene generato. Cosa ho sbagliato?

risposta

11

Ho avuto gli stessi problemi, ho seguito le istruzioni per la configurazione di aa con intelliJ, ora funziona come un fascino.

pagina di configurazione AA IntelliJ punterà a questo post ...

http://www.ashokgelal.com/2012/12/setting-up-intellij-idea-12-with-maven-actionbarsherlock-roboelectric-androidannotations/

... il post di cui sopra ti guida attraverso la creazione di varie librerie in IntelliJ, scorrere verso il basso per AA.

La cosa principale che ho avuto a che fare che non ho avuto a che fare in Eclipse è stato andare in Preferenze> Compiler> Processori di annotazione e impostare il mio processore Percorso a qualcosa di simile ...

[PATH TO AA VASI] /androidannotations-2.7.jar: [PATH TO AA VASI] /androidannotations-api-2.7.jar: [PATH TO AA VASI] /codemodel-2.4.1.jar

+1

Questa opzione sembra essere stata rimossa in Android Studio 1.2. –

+0

Grazie per l'heads up Ben, non ho aggiornato, –

0

Poiché Android Studio è basato su IntelliJ, hai provato a seguire lo configuration guideline sul wiki di AndroidAnnotation?

Se stai usando Gradle si dovrebbe verificare this page che spiega come configurare il plugin di AndroidAnnotation:

buildscript { 
    repositories { 
     mavenCentral() 
    } 

    def gradleAndroidAnnotationsPluginVersion = '0.3.0' 

    dependencies { 
     classpath "net.ealden.gradle.plugins:gradle-androidannotations-plugin:$gradleAndroidAnnotationsPluginVersion" 
    } 
} 

apply plugin: 'androidannotations' 
apply plugin: 'idea' 

androidAnnotationsVersion = '2.2' 

non ho provato questa nuova IDE ancora. Lo controllerò presto.

+0

ho fatto esercitazione hanno fornito ma non riuscivo a far funzionare le cose. Proverò il plugin che hai collegato in seguito. –

+0

Innanzitutto, questo plugin è un wrapper che circonda https://github.com/jvoegele/gradle-android-plugin che non ha nulla a che fare con Android Studio. – robotoaster

2

Se non si dispone di problemi di compilazione e solo dopo aver visto le classi generate nell'IDE, allora avete bisogno di controllare se bersaglio/generate-sources/annotazioni sia selezionata come cartella di origine .

Sarebbe File> Struttura progetto> Moduli> scheda Fonti, quindi cercare la cartella e contrassegnarla come Fonti. La cartella diventerà blu e verrà elencata nell'elenco delle cartelle di origine.

0

Se si tenta di utilizzare Android Studio con un progetto in esecuzione Annotazioni Android, si può incorrere in un problema di compilatore criptico:

digitato in modo errato i dati trovati per elemento annotazione pubblici com.googlecode.androidannotations Int astratti. annotations.EActivity.value() (Dati trovati di tipo int)

Il problema è che la classe R non è stata trovata.Android Studio non posiziona il file R.java nella directory gen per impostazione predefinita come eclipse. La soluzione è andare in Impostazioni progetto -> Facet -> Seleziona il facet Android per il tuo progetto -> scheda Compilatore, e cambia i "file R.java e Manifest.java" da "Esegui task Maven risorse processo prima di Creare" su "Generato da IDE".

5

Questo è ciò che funziona per me:

buildscript { 
    repositories { 
     mavenCentral() 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:0.5.+' 
    } 
} 

apply plugin: 'android' 

configurations { 
    apt 
} 

repositories { 
    mavenRepo url: 'https://oss.sonatype.org/content/repositories/snapshots/' 
} 

ext.androidAnnotationsVersion = '3.0-SNAPSHOT'; 

dependencies { 
    compile 'com.android.support:support-v4:18.0.+' 

    apt "org.androidannotations:androidannotations:$ext.androidAnnotationsVersion" 
    compile "org.androidannotations:androidannotations-api:$ext.androidAnnotationsVersion" 
} 

android { 
    compileSdkVersion 18 
    buildToolsVersion "17.0.0" 

    defaultConfig { 
     minSdkVersion 7 
     targetSdkVersion 18 
    } 
} 

android.applicationVariants.all { variant -> 
    ext.aptOutput = file("${project.buildDir}/source/apt_generated/${variant.dirName}") 
    ext.aptOutput.mkdirs() 

    variant.javaCompile.options.compilerArgs += [ 
      '-processorpath', configurations.apt.asPath, 
      '-AandroidManifestFile=' + variant.processResources.manifestFile, 
      '-s', ext.aptOutput 
    ] 
} 

Dopo che ho bisogno di marcare build/sources/apt-generated/debug come sorgente in Android Studio cliccando col tasto destro e selezionando Mark Directory as>Source Root

+2

Mark Directory è stato rimosso (non è presente in 0.3.4, in ogni caso). –