Red de conocimiento informático - Conocimiento informático - Cómo resolver el problema de varias bibliotecas que contienen la misma referencia en Android Studio

Cómo resolver el problema de varias bibliotecas que contienen la misma referencia en Android Studio

Cuando utilice Android Studio para desarrollar, si encuentra varios proyectos que hacen referencia a la misma biblioteca (código fuente), encontrará un conjunto de códigos de biblioteca en cada proyecto. Para desarrollo y mantenimiento La biblioteca también debe ser. Se modifica con frecuencia, lo cual es muy problemático para la sincronización. Para resolver este problema, han surgido las siguientes soluciones.

Primero: cree un nuevo proyecto de biblioteca llamado AppLibs.Dev.

Esta biblioteca contiene un módulo appLibs de biblioteca pública ***. La configuración de build.gradle en el módulo es la siguiente:

/** Declarar que es una biblioteca de Android*/ aplicar el complemento: com.android.library' android { /** Para poder admitir paquetes en esta biblioteca*/ useLibrary ' org. apache.pileSdkVersion 25 /** Versión de la herramienta de compilación*/ buildToolsVersion "25.0.2" defaultConfig { minSdkVersion 9 targetSdkVersion 25 versionCode 100 versionName "1.0.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" } buildTypes { debug { / /modo de depuración } release { // si se debe ofuscar minifyEnabled false // ubicación de los archivos ofuscados proguardFiles getDefaultProguardFile(' proguard-android.txt'), 'proguard-rules.pro' }}/** Eliminar errores de la validación * / lintOptions { abortOnError false }} dependencies { /** compilar fileTree compilará todos los archivos jar en la carpeta libs.  Elija entre esta opción y archivos compilados.

*/ // compilar fileTree(include: ['*.jar'], dir: 'libs') /** compilar archivos Compile un único archivo jar en la carpeta libs */ compile files('libs/jsch-0.1.53 .jar') compilar archivos('libs/commons-net-3.3.jar') compilar archivos ('libs/okpile files('libs/okio-1.6.0.jar') /** compilación de prueba*/ androidTestCompile(' com.android.support.test.espresso:espresso-core:2.2.2', {excluir grupo: 'com.android.support', módulo: support-annotations' })/** Compile el módulo con el nombre de paquete especificado * /compile 'com.android.support:appcompat-v7:25.2.0' compila 'com.android.support.constraint:constraint-layout:1.0.0-alpha7' /** compilación de prueba unitaria*/ testCompile 'junit: junit :4.12' }

La construcción de dicho proyecto de biblioteca de clases se completa y el siguiente paso es hacer referencia al proyecto que lo contiene.

El siguiente paso es. para hacer referencia al proyecto de biblioteca de clases, Android Studio crea un nuevo proyecto TestProject de la siguiente manera

En este proyecto, debe hacer tres cosas:

1. gradle. El código de la parte marcada con un círculo.

2. Agregue el código de la parte marcada con un círculo rojo en el archivo build.gradle del módulo:

Si el proyecto de biblioteca contiene varios módulos, agregue en el archivo settings.gradle Agregue el siguiente código después del código original en:

include ':AppLibs Dev:moduleName'

Al mismo tiempo, agregue el código gradle de. el módulo correspondiente en el archivo build.gradle del módulo APP Simplemente agregue el código del módulo correspondiente en:

Compilar proyecto (':AppLibs.Dev:moduleName')

3. Haga clic en Android Build->Clean Project en el menú Studio. Una vez completada la limpieza, verá la siguiente imagen.

Como se muestra en la figura anterior, una vez completado, el proyecto de la aplicación ha hecho referencia al proyecto de la biblioteca en el proyecto. De esta manera, cuando el proyecto de la biblioteca se modifique en el código fuente en el futuro, otros. Las referencias al proyecto de la biblioteca en el código fuente también se modificarán simultáneamente.