是否可以更改默認風味根路徑?如何更改Android產品的根文件夾產品的風格
來源:
---src
-----main
-----flavor1
-----flavor2
-----flavor3
要:
---src
-----main
-----flavors
--------flavor1
--------flavor2
--------flavor3
是否可以更改默認風味根路徑?如何更改Android產品的根文件夾產品的風格
來源:
---src
-----main
-----flavor1
-----flavor2
-----flavor3
要:
---src
-----main
-----flavors
--------flavor1
--------flavor2
--------flavor3
如果你不想添加一行到sourceSets每次添加香精你可以用這樣的方式關閉
productFlavors{
flavor1 {}
flavor2 {}
all { flavor ->
sourceSets[flavor.name].setRoot("src/flavors/${flavor.name}")
}
}
您可以通過使用sourceSets
實現這一目標。
productFlavors {
flavor2 {
}
flavor1 {
}
}
sourceSets{
flavor2 {
manifest.srcFile 'AndroidManifest-flavor2.xml'
res.srcDirs = ['res-flavor2', 'res']
java.srcDirs = ['src/flavor2/java','src/commonFiles/java']
resources.srcDirs = ['src/flavor2/java','src/commonFiles/java']
aidl.srcDirs = ['src/flavor2/java','src/commonFiles/java']
renderscript.srcDirs = ['src/flavor2/java','src/commonFiles/java']
}
flavor1 {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src/flavor1/java','src/commonFiles/java']
resources.srcDirs = ['src/flavor1/java','src/commonFiles/java']
aidl.srcDirs = ['src/flavor1/java','src/commonFiles/java']
renderscript.srcDirs = ['src/flavor1/java','src/commonFiles/java']
res.srcDirs = ['res-flavor1','res']
assets.srcDirs = ['assets']
}
}
誠然,這可以通過使用sourceSets
實現,但正確的和更簡單的解決方案是:
productFlavors{
flavor1 {}
flavor2 {}
}
sourceSets{
flavor1.setRoot('src/flavors/flavor1')
flavor2.setRoot('src/flavors/flavor2')
}