update tools studio para not descargar could configurar android gradle android-studio android-gradle

tools - Android Studio cómo empaquetar AAR individual de múltiples proyectos de biblioteca?



gradle version (1)

Estoy construyendo un proyecto de biblioteca Android, que tiene una dependencia en otro proyecto de biblioteca interna.

Me pregunto si existe una forma de empaquetar una sola biblioteca AAR, que ya contenga una biblioteca interna dentro de ella. Me gustaría compartir solo 1 paquete de biblioteca AAR para mis desarrolladores de aplicaciones.

Así es como se ven actualmente mis archivos build.gradle, pero actualmente producen archivos AAR separados y ambos deben incluirse en build.gradle de Application. Como otra empresa está creando una aplicación, debemos compartir el archivo AAR final con ellos y no los proyectos completos de la biblioteca.

----- InternalLib -------- >>>>>>>>>>

buildscript { repositories { mavenCentral() } dependencies { classpath ''com.android.tools.build:gradle:0.7.+'' } } apply plugin: ''android-library'' repositories { mavenCentral() } android { compileSdkVersion 18 buildToolsVersion ''18.1.1'' } dependencies { compile ''com.android.support:support-v4:18.0.0'' }

----- externalLib --------

buildscript { repositories { mavenCentral() } dependencies { classpath ''com.android.tools.build:gradle:0.7.+'' } } apply plugin: ''android-library'' repositories { mavenCentral() } android { compileSdkVersion 18 buildToolsVersion ''18.1.1'' } dependencies { compile ''com.android.support:support-v4:18.0.0'' compile project('':internalLib'') }


No hay un mecanismo para combinar la biblioteca. Es un poco complicado ya que probablemente desee controlar qué dependencias se fusionan (por ejemplo, probablemente no desee incluir el soporte-v4 allí). También necesitarás unir los recursos y el manifiesto de Android.

En este momento no hay forma de piratear algo fácilmente, a menos que esté seguro de que los recursos no tienen conflictos entre las dos carpetas de res (por ejemplo, podría tener strings_a.xml en una lib y strings_b.xml en la otra lib). De esta forma, puede "fusionar" las dos carpetas de res copiando ambas en la misma ubicación (en lugar de hacer una fusión en el nivel de resolución de Android).

Para el Manifiesto sería más complicado, pero factible con algún código personalizado.

Proveer un mecanismo incorporado para esto es muy bajo en nuestra prioridad, así que no lo espere pronto.