voixtreme-engine/vxt-engine/build.gradle
2020-02-12 15:01:45 +01:00

161 lines
5.3 KiB
Groovy

apply plugin: 'com.android.application'
android {
compileSdkVersion 25
flavorDimensions "HubOne"
String VOIXTREME_VERSION
String VERSION
lintOptions {
disable 'MissingTranslation'
abortOnError false
}
defaultConfig {
applicationId "com.voixtreme.vocalengine"
minSdkVersion 17
targetSdkVersion 25
VOIXTREME_VERSION = "4.2.5"
VERSION = VOIXTREME_VERSION + ".501"
buildConfigField("String", "VOIXTREME_VERSION", "\"" + VOIXTREME_VERSION + "\"")
buildConfigField("String", "VOIXTREME_VERSION_FULL", "\"" + VERSION + "\"")
}
def props = new Properties()
def keystorePath = "../../.keystore/"
def keystoreFile = "hubone.properties"
if (!file(keystorePath + keystoreFile).exists()) {
keystorePath = "../" + keystorePath
}
file(keystorePath + keystoreFile).withInputStream {
stream -> props.load(stream)
}
signingConfigs {
dbg {
storeFile file(keystorePath + props['voixtreme.debug.keystore'])
storePassword props['voixtreme.debug.keystore.password']
keyAlias props['voixtreme.debug.alias']
keyPassword props['voixtreme.debug.alias.password']
}
full {
storeFile file(keystorePath + props['voixtreme.release.keystore'])
storePassword props['voixtreme.release.keystore.password']
keyAlias props['voixtreme.release.alias']
keyPassword props['voixtreme.release.alias.password']
}
}
productFlavors {
dbg {
dimension "HubOne"
signingConfig signingConfigs.dbg
versionCode 1
versionName VERSION + " (dbg)"
proguardFile 'proguard-dont-obfuscate.pro'
buildConfigField("String", "VERSION_TYPE", "\"dbg\"")
}
full {
dimension "HubOne"
signingConfig signingConfigs.full
versionCode 1
versionName VERSION
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt') \
, 'proguard-rules.pro'
buildConfigField("String", "VERSION_TYPE", "\"full\"")
}
logcat {
dimension "HubOne"
signingConfig signingConfigs.full
versionCode 1
versionName VERSION + " (log)"
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt') \
, 'proguard-rules-log-cat.pro'
buildConfigField("String", "VERSION_TYPE", "\"logcat\"")
}
}
buildTypes {
debug {
debuggable true
minifyEnabled false
shrinkResources false
}
release {
debuggable false
minifyEnabled true
shrinkResources true
}
}
applicationVariants.all { variant ->
variant.outputs.all { output ->
def project = project.name
def values = variant.versionName.split(" ")
def version = values[0]
def flavor = ""
if (variant.productFlavors[0] != null) {
flavor = "-" + variant.productFlavors[0].name
}
def date = new Date()
def formattedDate = date.format('yyyyMMdd')
def buildType = variant.variantData.variantConfiguration.buildType.name
if (buildType == "release") {
if (flavor == "-" + "dbg") {
buildType = ""
} else {
buildType = "-" + "rel"
}
} else {
buildType = "-" + "debug"
formattedDate = ""
}
def newApkName
if (flavor == "-full") {
if (formattedDate == "") {
newApkName = project + "-" + "full" + "-" + "debug-v" + version + ".apk"
} else {
newApkName = project + "-" + "rel(v"+ version + "#" + formattedDate + ").apk"
}
} else if (flavor == "-logcat") {
if (formattedDate == "") {
newApkName = project + "-" + "full-logcat" + "-" + "debug-v" + version + ".apk"
} else {
newApkName = project + "-" + "rel-logcat(v"+ version + "#" + formattedDate + ").apk"
}
} else {
if (flavor == "-working") {
newApkName = project + "-jima" + buildType + "-v" \
+ version + formattedDate + ".apk"
} else {
if (formattedDate == "") {
newApkName = project + flavor + buildType + "-v" + version + ".apk"
} else {
newApkName = project + flavor + buildType + "(v" \
+ version + "#" + formattedDate + ").apk"
}
}
}
output.outputFileName = new File(newApkName)
}
}
}
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
testImplementation 'junit:junit:4.12'
implementation 'org.greenrobot:eventbus:3.0.0'
implementation 'com.android.support:appcompat-v7:25.4.0'
implementation project(':library')
}