how append date build to versionNameSuffix on gradle
I am using Android Studio and I need to append a suffix to the versionNameSuffix
on my Android build.gradle file. I have three different build types and I only need to append the datetime to my "beta" release. My actual file is:
defaultConfig {
versionCode 14
versionName "0.7.5"
minSdkVersion 9
targetSdkVersion 18
}
buildTypes {
beta {
packageNameSuffix ".beta"
versionNameSuffix "-beta"
signingConfig signingConfigs.debug
}
....
}
For testing and automatic deploy, I need to get a final versionName like: 0.7.5-beta-build20131004
, 0.7.5-beta-build1380855996
or something like that. Any ideas?
beta {
packageNameSuffix ".beta"
versionNameSuffix "-beta" + "-build" + getDate()
signingConfig signingConfigs.debug
}
def getDate() {
def date = new Date()
def formattedDate = date.format('yyyyMMddHHmmss')
return formattedDate
}
Condensed:
def getDate() {
return new Date().format('yyyyMMddHHmmss')
}
You can define in your build.gradle custom functions and variables.
def versionMajor = 3
def buildTime() {
def df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm'Z'") // you can change it
df.setTimeZone(TimeZone.getTimeZone("UTC"))
return df.format(new Date())
}
Then you can use it:
android {
defaultConfig {
versionName "${versionMajor}-beta-build-${buildTime()}"
}
}
or if you want to add it in you versionNameSuffix
beta {
versionNameSuffix "-beta-build-${buildTime()}"
}