Una de las cosas a las que estoy acostumbrado, es tener siempre en mi código, el hash/tag/versión del control de versiones que estoy usando, para poder rápidamente identificar esa aplicación en
que parte se encuentra dentro de mi historia.
Mucha gente hace una variable , ya sea de fecha de compilacion, hora, etc, o var = "1.0.a".
Pero la idea es que sea el propio entorno el que lo haga por nosotros.
Para dotar a Android Studio de ello, a través de gradle, tan simple como editar el fichero
build.gradle
apply plugin: 'com.android.application'
android {
def getGitHash = { ->
def stdout = new ByteArrayOutputStream()
exec {
commandLine 'git', 'rev-parse', '--short', 'HEAD'
standardOutput = stdout
}
return stdout.toString().trim()
}
compileSdkVersion 25
buildToolsVersion '25.0.0'
defaultConfig {
applicationId 'com.app.com.test'
minSdkVersion 19
targetSdkVersion 25
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
buildConfigField "String", "GitHash", "\"${getGitHash()}\""
}
Lo marcado en color es lo que tenéis que poner en el fichero build.gradle.OJO , la función getGitHash() DEBE de estar ARRIBA, de lo contrario, no la encontrará.
Después , para usarla desde nuestro código;
String hash = BuildConfig.GitHash;
No hay comentarios:
Publicar un comentario