Android Studio – Creación de módulos sin copiar archivos?

Estoy creando proyectos con dependencias en Android Studio. Sé cómo vincular proyectos mediante la adición de módulos.

Pero me di cuenta de que 'importar módulos' crear una copia de la libProject dentro del proyecto.

Hay alguna manera de prevenir eso ? ¿Como un "módulo externo"?

Desde que estoy a cargo de ambos proyectos, quiero ser capaz de empujar los cambios a la libProject Repo, sin tener que copiar archivos de pasta entre las carpetas.

Gracias

Si, puedes hacerlo. El módulo necesita tener un archivo de compilación de Gradle configurado para ello. Si tiene eso, entonces en el proyecto que está enlazando a él, agregue esto al archivo settings.gradle en la raíz del proyecto:

include ':libraryName' project(':libraryName').projectDir=new File('/path/to/library') 

Donde la ruta que especifica en la segunda línea es la ruta al directorio que contiene el archivo build.gradle de la biblioteca. El camino puede ser relativo o absoluto.

La solución:

 include ':libraryName' project(':libraryName').projectDir=new File('/path/to/library') 

No estaba funcionando para mí. Después de un par de horas perdidas me di cuenta del problema. Hay dos archivos build.gradle , uno para el proyecto y otro para el nombre de la biblioteca. Si la biblioteca está en la carpeta '\ MyLib' entonces habrá un build.gradle en '\ MyLib' y otro en '\ MyLib \ app' . Tienes que apuntar a la '\ MyLib \ app' y no a '\ Mylib' .

Esperemos que esto ahorre tiempo para otros.

También puedes usar android {sourceSets {main.java.srcDirs + = '../../../library/src'}} en tu aplicación build.gradle . No estoy seguro sobre el apoyo de todos los recursos de Android, para la biblioteca de Java puro funciona bien.

Si usted tiene, como yo, tiene varios módulos ( sólo me di cuenta hoy que las copias fueron incluidas, pensé que el proyecto incluía enlaces a la fuente. )

Puede tener múltiples módulos / proyectos en la línea de: –

 include ':app', ':sqlwords', ':dbindex', ':dbcolumn', ':dbtable', ':dbdatabase', ':displayhelp', ':pickdate' project(':sqlwords').projectDir= new File('d:/Android_Applications/Modules/sqlwords') project(':dbcolumn').projectDir= new File('d:/Android_Applications/Modules/dbcolumn') project(':dbtable').projectDir= new File('d:/Android_Applications/Modules/dbtable') project(':dbindex').projectDir= new File('d:/Android_Applications/Modules/dbindex') project(':dbdatabase').projectDir= new File('d:/Android_Applications/Modules/dbdatabase') project(':displayhelp').projectDir= new File('d:/Android_Applications/Modules/displayhelp') project(':pickdate').projectDir= new File('d:/Android_Applications/PickDateShowCase/pickdate') 
  • Reducir el tamaño de la imagen antes de publicar
  • ¿Por qué el informe de Android Studio "URI no está registrado"?
  • HttpClient no funciona en mi estudio de Android 1.4
  • Cómo utilizar el último FFMPEG en el proyecto de estudio de Android?
  • Módulo o proyecto de importación como Biblioteca en Android Studio
  • Error: (24, 13) Error al resolver: com.android.support:appcompat-v7:20
  • ¿Se puede implementar en un dispositivo a través de Gradle desde la línea de comandos
  • Spinner estilo de color en Android
  • Error: archivos duplicados durante el empaquetado de APK Android Studio Error
  • Bug en sólo la liberación de 1,5?
  • Adición de Tesseract y Opencv a Android.mk (Android Studio)
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.