1. 项目的结构


Android 中将多个子模块合并成一个 aar

方针:将模块A打包成 aar,提供给其他工程师运用。

模块之间的联系:模块A引证模块B,模块B引证模块C。

2. 运用 fat-aar-android 三方库进行实现

  • fat-aar-android
  • 中文运用文档
  1. 增加以下代码到工程根目录的build.gradle文件中:
buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.github.kezong:fat-aar:1.3.8'
    }
}
  1. 增加以下代码到主模块的build.gradle中(Module A):
apply plugin: 'com.kezong.fat-aar'
  1. 增加以下代码到主模块的build.gradle中(Module A):
embed project(path: ':ModuleB', configuration: 'default')
embed project(path: ':ModuleC', configuration: 'default')

Module B 引证 Module C,则需要在 Module B 的 build.gradle中进行引证

eg: implementation project(path: ‘:Module B’)

  1. 执行 assemble 命令
# assemble all
./gradlew :ModuleA:assemble

到这里的话就顺利完成了,遇到其它问题的话,我暂时不会。

参考

Android修炼系列(27),fat-aar 下的 arr 合并的坑

一文详解 implementation api embed