English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Recientemente me he encontrado con este problema desagradable
Pregunta: Si se coloca un archivo arr en el módulo A que se refiere, y luego el módulo B depende del módulo A, se producirá un error durante el proceso de compilación, ya que el módulo B no puede encontrar el archivo aar. (Al mismo tiempo, si el módulo C depende de B, también tendrá el mismo problema)
Solución:
1.El procedimiento normal para agregar un archivo aar a un module es:
1.Agrega el archivo aar en la carpeta libs del archivo build.gradle del proyecto en el nodo android
2.
3.
1.
repositories { flatDir { dirs 'libs' } }
4.Luego, continúa agregando en el nodo dependencies: compile(name: 'svprogresshud-release', ext: 'aar')
2de esta manera causará el problema mencionado anteriormente, por lo que lo que debes hacer es, agregar build.gradle del nodo android de todos los dependientes o dependientes indirectos del Module A
repositories { flatDir { dirs '../common/libs','libs' } }
La ruta anterior a dirs es la carpeta del Module A
Causa del problema:
Para los Module B y Module C, dependen del Module A, ya sea que los usen o no, siempre irán a recorrer las dependencias del Module A, cuando lleguen a la dependencia local aar agregada, también necesitan proporcionar la ruta de aar, y si la forma de proporcionar es la ruta de libs, buscará en la carpeta de su propio paquete, naturalmente no hay, por lo que debe proporcionar otra ruta relativa: ../common/libs de esta manera se puede encontrar, y para no afectar a este Module y la referencia de libs de su propio Module, se utiliza una coma para agregar otra ruta
Resumen
Lo mencionado anteriormente es el problema de referencia de nivel multimodulo de Android Studio para el archivo aar que he presentado a todos, espero que les sea útil!