Android组件化初探一(各Module库版本统一问题)

一、什么是组件化

组件化就是将App分成多个Module,每个Module以library的形式存在于项目中,并存在一个壳工程依赖这些Module。如图所示:

组件化思路

二、为何要用组件化

优势:

1、多人分module同步进行开发,开发速度快

2、开发过程中无需编译整个project,提高开发效率

3、模块清晰、耦合度较低、便于维护

4、功能模块可重复利用

三、组件间通信

四、Module库版本统一问题:

每个组件占用一个Module,如果每个module所引用的库版本不一样,将导致app存在重复的库,增加apk包大小。所以,库统一问题需要重视

1、在工程根目录下创建config.gradle配置文件,如图

config.gralle内容如下,可按项目情况添加

2、调用方法

首先,在工程的build导入该文件,如图:

第二步,在各module的build.gradle引用,如图


这里我们定义config变量为rootProject.ext(groovy语言定义,有兴趣的同学可以了解下)api与implementation为Android studio3.0新加入命令,api与compile功能一样

主要,当dependence中引用时,单引号需改为双引号(同样是groovy语法)

至此,你已经学会组件化的第一步啦,下篇文章将介绍Module如何即是library,又是Application

组件化demo : https://github.com/rongkun/ComponentJava

kotlin版:https://github.com/rongkun/Component

你可能感兴趣的:(Android组件化初探一(各Module库版本统一问题))