ich ein ähnliches Problem aufgetreten, aber wollte nicht die version modifizieren, um die git schließen Hash. Wir wollten das als etwas wie 1.2.2 behalten, haben aber immer noch die Möglichkeit, den Git-Hash in der Benutzeroberfläche anzuzeigen.
Ich habe den Code von the other answer here geändert, um mithilfe der buildConfigField-Task einen BuildConfig.GitHash-Wert zu generieren, auf den im Java-Code verwiesen werden kann.
Fügen Sie diese über dem android
Abschnitt build.gradle-Datei des Moduls:
def getGitHash = { ->
def stdout = new ByteArrayOutputStream()
exec {
commandLine 'git', 'rev-parse', '--short', 'HEAD'
standardOutput = stdout
}
return stdout.toString().trim()
}
dann die folgende Zeile in dem defaultConfig
Schnitt des Abschnitts des build.gradle android
hinzufügen, das heißt unter versionName
:
buildConfigField "String", "GitHash", "\"${getGitHash()}\""
Dies erzeugt die folgende Zeile in der automatisch generierte BuildConfig.java Datei:
// Fields from default config.
public static final String GitHash = "e61af97";
Jetzt können Sie den Git-Hash in Ihrem Java-Code mit BuildConfig.GitHash
erhalten.
HI, bekomme ich das Error: CreateProcess error = 2, Das System kann die angegebene Datei nicht finden ,, irgendwelche Leads meine Co-Debase ist auf GitLabs – Haroon
@Haroon: Überprüfen Sie, ob der Pfad zu Git in Ihrer PATH-Umgebungsvariable ist . Überprüfen Sie dies, indem Sie eine neue Eingabeaufforderung/Terminal öffnen und "git --version" eingeben – Paul
Dank @Paul genau das, was Sie geschrieben haben, tat ich, machte nur die Git zur Umgebungsvariable – Haroon