Verwenden Sie verschiedene VersionCode für Debug / Release android Gradle Build

8

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?

%Vor%     
Youngjae 24.02.2015, 08:27
quelle

2 Antworten

6

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: Ссылка

    
fishtrees 03.08.2015 11:16
quelle
4

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.

%Vor%     
Filipe Esperandio 17.06.2016 13:54
quelle