Mein Android-Projekt verschiedene Produkte Aromen konfiguriert hat:Wie bestimmte Gradle-Aufgaben filtern und ausführen?
productFlavors {
devtracking {
dimension trackingFlavorDimension
}
livetracking {
dimension trackingFlavorDimension
}
stagingwebservice {
dimension webserviceFlavorDimension
}
livewebservice {
dimension webserviceFlavorDimension
}
playstore {
dimension brandDimension
}
fdroid {
dimension brandDimension
}
}
Wie kann ich eine Aufgabe schreiben, die release
Build für den devtracking
Geschmack nur baut? Der "Filter" ist fertig - wie kann ich die gefilterten Aufgaben tatsächlich ausführen? Beachten Sie, dass der "Filter" gerade zur Konfigurationszeit ausgeführt wird.
task assembleDevtrackingRelease {
description "Assembles all Devtracking release builds."
group = "Build"
android.applicationVariants.all { variant ->
if (variant.name.contains("DevtrackingRelease")) {
println(variant.name)
// TODO Execute this variant
}
}
}
Ich möchte keine 'Installation' Aufgabe. Ich möchte es nicht automatisch ausführen, wenn ich './gradlew Tasks 'aufruft. – JJD
es sieht aus wie ein guter Track ... ändern zu Assembly Assembly dann diese Aufgabe sollte alle 'assembleXXXXXXDevtrackingRelease' Aufgaben ausführen ... diese Antwort scheint wie Kopie von [Gradle Rezepte für Android-Code] (https://books.google.pl /books?id=10pODAAAQBAJ&pg=PA79&lpg=PA79&dq=android.applicationVariants.all+%7B+v + -% 3E + if + (v.name.endsWith() +% 7B + Zeichenfolge + Name +% 3D + v.name.capitalize() + DependsOn + $ name installieren +% 7D +% 7D & source = bl & OTS = qKM0lIEMhK & sig = iknp-r56E9kfKSFRLaqPc2OH4hE & hl = pl & sa = X & ved = 0ahUKEwjNzu__5sHTAhXJ1xQKHScECh8Q6AEIIzAA # v = OnePage & q & f = false) ohne Änderung für Ihre requeriments – Selvin
ich verstehe nicht: die Linie führt die Variante bestimmte Aufgabe? Außerdem gibt das Ebook an, dass ich einen "doLast" -Block hinzufügen muss, um Befehle auszuführen. – JJD