我在遷移的Android項目到搖籃,用實驗插件的早期階段是0.4.0搖籃使用不同的任務/參數每個構建類型
作爲構建過程的一部分,我有很多的在編譯我的代碼/構建apk之前應該運行的腳本。調試或發佈版本的參數或任務本身會有所不同。
我正在努力尋找一個簡單的方法來實現這一點。
我已經把所有事情都帶回了一個簡單的hello世界項目,而我知道了這一點。
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle-experimental:0.4.0'
}
}
apply plugin: 'com.android.model.application'
model {
android {
compileSdkVersion = 23
buildToolsVersion = "23.0.2"
}
android.buildTypes {
debug {
//
}
release {
//runProguard, sign etc.
}
}
android.productFlavors {
create("free")
{
applicationId = "com.example.app.free"
versionName = "1.0-free"
}
create("full")
{
applicationId = "com.example.app.full"
versionName = "1.0-full"
}
}
}
repositories {
jcenter()
}
dependencies {
compile 'joda-time:joda-time:2.7'
}
task runScript(type: Exec) {
executable "sh"
args "-c", "echo SomeScriptHere"
}
tasks.withType(JavaCompile) {
compileTask -> compileTask.dependsOn runScript
}
task wrapper(type: Wrapper) {
gradleVersion = '2.5'
}
理想我想基於構建沒有產生各種應用程序的類型由buildType(不productFlavor)本所要求的任務區分。
是否可以指定任務只應在發佈版或調試版上運行?
或者是有可能根據被釋放或調試版本定義不同的參數用於我的runScript任務?
道歉,如果我失去了一些明顯的東西,我很新使用gradle。