如何更改Android产品的根文件夹产品的风格

问题描述:

是否可以更改默认风味根路径?如何更改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') 
}