Android Studio – ¿Cómo crear modules sin copyr files?

Estoy creando proyectos con dependencies en Android Studio. Sé cómo vincular proyectos mediante la adición de modules.

Pero me di count de que 'importando modules' creaba una copy de libProject dentro del proyecto.

Hay alguna manera de prevenir eso ? ¿Como un 'module externo'?

Como estoy a cargo de ambos proyectos, deseo poder realizar cambios en el repository de libProject, sin tener que copyr los files de pegar entre carpetas.

Gracias

Si, puedes hacerlo. El module necesita tener un file de compilation de Gradle configurado para él. Si tiene eso, en el proyecto que está enlazando a él, agréguelo al file settings.gradle en la raíz del proyecto:

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

donde la ruta especificada en la segunda línea es la ruta al directory que contiene el file build.gradle de la biblioteca. La ruta puede ser relativa o absoluta.

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 descubrí el problema. Hay dos files build.gradle , uno para el proyecto y otro para la biblioteca. Si la biblioteca está en la carpeta '\ MyLib' , 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 algo de time para otros.

También puede usar android {sourceSets {main.java.srcDirs + = '../../../library/src'}} en su aplicación build.gradle . No estoy seguro de apoyar todos los resources de Android, ya que la biblioteca java funciona bien.

Si usted, como yo, tiene varios modules ( solo me di count hoy de que se incluyeron copys, pensé que el proyecto incluía enlaces a la fuente ) .

Puede tener múltiples modules / 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')