Ich möchte verschiedene VersionCode anwenden, um eine apk -Datei zu erstellen.
Zum Debuggen nur beheben Sie es in 1
, und für die Freigabe der in defaultConfig angegebenen Zahl.
Der folgende Code gibt mypackage-release-1.apk
file als assembleRelease Artefakt an, was nicht erwartet wird. Ich habe mypackage-release-10111.apk
dafür erwartet.
Warum beeinflusst die Zeile debug { defaultConfig.versionCode=1 }
das assembleRelease-Artefakt?
Ich auch, aber ich denke defaultConfig.versionCode
wurde gesetzt, wenn build.gradle
kompiliert wird. Es ist eine globale statische Variable und wird bei Kompilierungszeit und nicht bei Laufzeit zugewiesen.
Ich denke, wir können die Ausführung von Großtasks abfangen und defaultConfig.versionCode
zur Laufzeit ändern.
Nach goooooooogle fand ich, dass dieses für mich funktioniert: Ссылка
Spät auf der Party ...
Die gesamte Gradle-Datei wird vor der Ausführung einer Aufgabe ausgewertet. Sie ändern also grundsätzlich den Standard versionCode
und deklarieren debug
configs. Es gibt keine direkte Möglichkeit, versionCode
von buildType
zurückzusetzen, aber der Link auf der anderen Antwort führt den Trick aus, indem eine Aufgabe für Build-Varianten deklariert wird.
Tags und Links android build.gradle android-gradle