Vorrei inserire un codice di script comune gradle
nel file condiviso .gradle
. Quindi, posso riutilizzarlo usando la dichiarazione apply from:
.Gradle: parametri passanti a 'apply from: <file> `
La domanda è se è possibile passare i parametri allo script applicato? Per esempio, mi piacerebbe riutilizzare il seguente piastra della caldaia:
apply plugin: 'com.android.application'
apply plugin: 'com.neenbedankt.android-apt'
apply plugin: 'org.robolectric'
configurations {
apt
}
android {
compileSdkVersion rootProject.ext.compileSdkVersion
buildToolsVersion rootProject.ext.buildToolsVersion
defaultConfig {
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
versionCode rootProject.ext.versionCode
versionName rootProject.ext.versionName
}
buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
Il problema è qui: apply plugin: 'com.android.application'
. Mi piacerebbe riutilizzare questo codice per progetti applicativi o progetti di librerie Android. Quindi ho bisogno di alcuni parametri, al fine di decidere quale plugin per applicare:
// assuming <isApplicationProject> - is a script parameter
if (isApplicationProject) {
apply plugin: 'com.android.application'
} else {
apply plugin: 'com.android.library'
}
Naturalmente, posso solo definire alcune proprietà a livello di progetto in questo caso particolare, ma mi piacerebbe sapere se è possibile passare parametri su richiamo dello script