Módulo de importación de Android Studio Error de generación de Gradle
Estoy intentando agregar un directorio como dependencia en Android Studio (GameBaseUtils). He visto otras respuestas SO simplemente publicar la configuración de gradle correcta para su problema particular, sin embargo no entiendo cómo puedo adaptar sus respuestas a mi situación.
Esto es lo que hice:
- ¿Cómo crear la mejor estructura de proyectos de aplicaciones para Android con Android Studio y Gradle?
- SDK ubicación no encontrada. ANDROID_HOME - construcción de un proyecto gradle en eclipse en un MAC
- La actualización de Google Play Services de 8.4.0 a 9.2.1 provoca un error de sincronización de Gradle
- Android Studio publica una biblioteca local
- La tarea "instalar" de plugin de Gradle Maven no funciona con el proyecto de la biblioteca de Android
Paso 1: Archivo-> Módulo de importación -> Navegue al directorio y selecciónelo.
Paso dos-: Archivo-> Estructura del proyecto-> Módulos-> Seleccionar mi aplicación-> Dependencias-> Añadir el módulo como una dependencia de mi proyecto.
Ahora mi código no tiene ninguna línea roja que indica un error al importar el módulo. Sin embargo cuando selecciono la estructura consigo los errores siguientes:
Gradle: package com.google.example.games.basegameutils does not exist Gradle: cannot find symbol class BaseGameActivity Gradle: cannot find symbol variable super ...
Aquí está el archivo build.gradle para mi aplicación
buildscript { repositories { mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:0.4' } } apply plugin: 'android' dependencies { compile files('libs/android-support-v4.jar') } android { compileSdkVersion 17 buildToolsVersion "17.0.0" defaultConfig { minSdkVersion 8 targetSdkVersion 17 } }
¿Cómo puedo importar correctamente esta biblioteca externa y puede explicar cómo y por qué funciona su solución?
- No se pudo encontrar el método release () para los argumentos
- ConnectedAndroidTest y tipo de compilación de liberación
- Incluya la biblioteca .so en apk en android studio
- Proguard gradle debug build pero no las pruebas
- Java.lang.ClassCastException: Android.support.v7.widget.ContentFrameLayout no se puede convertir en Android.support.v7.widget.ContentFrameLayout
- Nueva reliquia no funciona (gradle + estudio androide)
- Gradle - equivalente de test {} bloque de configuración para android
- ADT Eclipse + Gradle: incompleto BuildConfig.java
Así que aquí es cómo resolví mi problema:
En lugar de agregar
dependencies { compile files('libs/android-support-v4.jar') compile project(':Module') }
Tu tienes que escribir:
dependencies { compile files('libs/android-support-v4.jar', '../Module') }
Los 2 puntos dicen que el módulo (o directorio) se puede encontrar en 1 directorio por encima de la actual. Así que si usted desea tener acceso a un módulo que sea 2 directorios encima de usted apenas tiene que escribir: '../../ModuleName'
Tienes que agregar los módulos manualmente a build.gradle porque Android Studio aún está en desarrollo y no ha terminado la interfaz de usuario para editar la estructura del proyecto.
Si esto no resuelve su problema, trata de hacerlo así: (Recomendaría este método, así es como lo hago)
Ejemplos de estructura:
-
Proyecto
- Bibliotecas (carpeta normal)
- Módulo 2
- Módulo 1
- Bibliotecas (carpeta normal)
Settings.gradle
include ':Module1', ':libraries:Module2'
Build.gradle ( Módulo1 )
buildscript { repositories { mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:0.5.+' } } apply plugin: 'android' dependencies { compile project(':libraries:Module2') } android { compileSdkVersion 18 buildToolsVersion "18.0.1" defaultConfig { minSdkVersion 8 targetSdkVersion 11 } }
Build.gradle ( Módulo2 )
buildscript { repositories { mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:0.5.+' } } apply plugin: 'android-library' dependencies { compile 'com.android.support:support-v4:18.0.0' } android { compileSdkVersion 18 buildToolsVersion "18.0.1" defaultConfig { minSdkVersion 8 targetSdkVersion 11 } sourceSets { main { manifest.srcFile 'AndroidManifest.xml' java.srcDirs = ['src'] resources.srcDirs = ['src'] res.srcDirs = ['res'] } } }
Esto debería funcionar bien ahora. Para que todo funcione al 100%, siga estos pasos:
- Eliminar la carpeta
.idea
- Eliminar todos los archivos
*.iml
- Reinicie Android Studio y presione
Import Project
- Seleccione el directorio con su proyecto de gradle
-
Import project from external model
> Gradle> siguiente> acabado
Con estos pasos todo debe funcionar bien. Si hay algún problema solo dime 🙂
No agregue módulos a través de la interfaz de Studio. Realice siempre los cambios directamente en build.gradle y vuelva a importarlos a Studio.
Además, actualice la dependencia del complemento a com.android.tools.build:gradle:0.4.+ para obtener la última versión 0.4. *.
- Java.lang.NullPointerException: Intenta invocar el método de interfaz 'java.util.Iterator java.lang.Iterable.iterator ()' al iniciar una notación
- ¿Cómo deshabilitar la alineación automática?