背景
在Android App的成长过程中,随着包功能越来越多,团队越来越复杂,为了保证功能的清晰和可维护性、增加模块的内聚性,减小git推代码冲突的风险等等,App的开发模式会慢慢变成集成开发模式
- 集成开发模式
每个人负责一个或者多个模块,模块之间相互隔离,独立进行打包和升级,最后以远端依赖的方式集成到App中进行打包
问题
在采用集成开发模式的时候会碰到一个问题,因为主App都是通过implement 远端的依赖进行打包的,当在本地开发的时候,如何对模块的本地代码进行调试呢?
一般我们的做法是这样的:
- 在build.gradle中将远端的依赖改为本地依赖
- 在setting.gradle中定义本地依赖的模块地址
// build.gradle文件
dependencies {
// 在主App中是这么定义依赖的
implementation 'io.github.pettywing:floatwindow:1.0.0'
// 当业务在本地开发的时候改为
implementation project(':floatwindow')
}
// setting.gradle文件
include ':floatwindow'
project(":floatwindow").projectDir = file("../floatwindow/floatwindow")
但这样设置很麻烦,风险也很高,每次项目拉到本地都要改一次,到远端打包的时候还要在修改回来,有没有啥简单的方法呢