组件化配置

这篇文件介绍的很好,强烈建议先看看
Android组件化方案

1.创建依赖包 名为test_library
2.gradle.properties中添加

# true 单独模块编译
isModule=true

3.在依赖gradle 添加

if (isModule.toBoolean()) {
    apply plugin: 'com.android.application'
} else {
    apply plugin: 'com.android.library'
}

android {   
  defaultConfig {
if(isModule.toBoolean()){
            applicationId "com.test.test_library"
        }
}
 sourceSets {
        main {
            if (isModule.toBoolean()) {
                manifest.srcFile 'src/main/module/AndroidManifest.xml'
            } else {
                manifest.srcFile 'src/main/AndroidManifest.xml'
            }
        }
    }
}

4.创建依赖包单独编译的Mainfest
组件化配置_第1张图片
module 里新建的 mainfest ,包含了application和启动信息,只用于依赖包加载




    
        
            
                
                
            
        
    


依赖包自动生成的mainfest




    
        
    


5.主项目gradle

dependencies {
if(!isModule.toBoolean()){
        implementation project(path: ':test_library')
    }
}

6.针对资源文件重名的问题,可以依赖gradle添加前缀,保障依赖包文件必须有此前缀

android {
 resourcePrefix "testlib"
}

你可能感兴趣的:(Android)