效果如下:
點選app右側的箭頭,可進行debug和release模式的切換,相應依賴和被依賴的項目也進行debug和release的切換,點選運作,即可進行相應模式的運作:
講解如下:
data 主要存放下公用的方法和變量,其他項目需依賴data項目,data不依賴任何項目
如下:data隻有一個模式,不需區分debug和release,是以buildType隻寫一種就行,且不需要依賴,是以compile不需要寫
build.gradle檔案配置如下:
net主要是網絡請求,其他項目需依賴net項目,net依賴data
如下:
net的build.gradle檔案如下:因為data隻有一個模式,不需區分debug還是release,是以net依賴隻寫
compile project(':data')
但是net需要區分debug模式還是release模式,是以buildTypes 要設定區分
driver主要存放和硬體相關和裝置相關的,其他項目需依賴driver項目,driver隻依賴data,data沒有區分debug還是release,是以 隻寫 compile project(“:data”)即可。
并且driver自己也不需要區分debug模式和release模式 是以buildType 隻寫一個release即可。
build.gradle配置如下:
domain 隻依賴net,
但是呢,net分為debug和release模式,是以compile 要寫兩種 如下:
依賴domain的APP項目需要debug和release的切換,是以domain的 buildType也要區分兩種,如下:
app ——接下來就是重要的APP主項目了,所有的業務邏輯所在,主項目,是主導debug和release模式進行切換的。它所要依賴的那個,也就是被依賴的,如上面,已配置好。它本身又主導debug和release模式,是以buildType也要區分debug和release模式。
build.gradle配置如下:
主項目,是主導debug和release模式進行切換的
它所依賴的data和driver 不需區分debug還是release,是以
compile project(':data')
compile project(':driver')
但是它依賴domain,但domain 依賴net, 是區分debug和release的,是以
releaseCompile project(path: ':domain', configuration: 'release')
debugCompile project(path: ':domain', configuration: 'debug')
總體如下: