Da programmiert man gemütlich an seiner Android App, drückt auf Kompilieren und anschließend merkt man: “Mist ist habe vergessen die Versionsnummer zu erhöhen”.
Jeder App-Entwickler kennt dieses Problem.
Ohne erhöhte Versionsnummer kein Upload in den Google PlayStore.
Es gibt aber eine Möglichkeit die Versionsnummer sich automatisch selber erhöhen zu lassen.
Wir öffnen hierfür die Datei “build.gradle (Module: app)” und fügen ans Ende der Datei diesen Schnippsel hinzu.
import java.util.regex.Pattern task('increaseVersionCode') << { def manifestFile = file("src/main/AndroidManifest.xml") def pattern = Pattern.compile("versionCode=\"(\\d+)\"") def manifestText = manifestFile.getText() def matcher = pattern.matcher(manifestText) matcher.find() def versionCode = Integer.parseInt(matcher.group(1)) def manifestContent = matcher.replaceAll("versionCode=\"" + ++versionCode + "\"") manifestFile.write(manifestContent) } task('incrementVersionName') << { def manifestFile = file("src/main/AndroidManifest.xml") def patternVersionNumber = Pattern.compile("versionName=\"(\\d+)\\.(\\d+)\\.(\\d+)\\.(\\d+)\"") def manifestText = manifestFile.getText() def matcherVersionNumber = patternVersionNumber.matcher(manifestText) matcherVersionNumber.find() def majorVersion = Integer.parseInt(matcherVersionNumber.group(1)) def minorVersion = Integer.parseInt(matcherVersionNumber.group(2)) def pointVersion = Integer.parseInt(matcherVersionNumber.group(3)) def buildVersion = Integer.parseInt(matcherVersionNumber.group(4)) def mNextVersionName = majorVersion + "." + minorVersion + "." + pointVersion + "." + (buildVersion + 1) def manifestContent = matcherVersionNumber.replaceAll("versionName=\"" + mNextVersionName + "\"") manifestFile.write(manifestContent) } tasks.whenTaskAdded { task -> if (task.name == 'generateReleaseBuildConfig' || task.name == 'generateDebugBuildConfig') { task.dependsOn 'increaseVersionCode' task.dependsOn 'incrementVersionName' } }
Zusätzlich müssen wir die Zeilen “versionCode X” und “versionName “Y.Y.Y.Y”” entfernen.
Anschließend müssen wir die Informationen, der beiden entfernten Zeilen, wieder in die Datei “AndroidManifest.xml” einfügen.
Dazu schreiben wir “android:versionCode=”X” ” und “android:versionName=”Y.Y.Y.Y” ” in den Tag “manifest”.
Dies sieht dann so ähnlich aus:
Wichtig ist hier, dass der Versionsname aus vier Zahlen, mit einem Punkt getrennt, besteht.
Es wird sich ab jetzt der VersionCode um +1 erhöhen und zusätzlich die letzte Zahl des VersionName.
Weitere Informationen zu der Versionsbezeichnung findest du hier: Versionsnummer – Wikipedia