Код: Выделить всё
android.applicationVariants.configureEach {
if (name.toDefaultLowerCase().contains("dev") || name.toDefaultLowerCase().contains("alpha")) {
preBuildProvider.configure {
dependsOn("copyChangelog")
}
}
}
tasks.register("copyChangelog") {
from("$rootDir/docs/CHANGELOG.md")
into("src/devsettings/assets")
rename("CHANGELOG.md", "DevSettingsChangelog.md")
}
Я также объединил оба раздела в один, см. ниже.
Однако он не компилируется. Невозможно определить тип для параметра типа «FileTypeT». Укажите это явно.
Код: Выделить всё
androidComponents {
onVariants { variant ->
if (variant.flavorName !in setOf("dev", "alpha")) return@onVariants
val copyTaskName = "copy${variant.name.replaceFirstChar { it.titlecase() }}Assets"
val copyTask = project.tasks.register(copyTaskName) {
from("$rootDir/docs/CHANGELOG.md")
into("src/devsettings/assets")
// into("${project.buildDir}/generated/assets/${variant.dirName}")
rename { "DevSettingsChangelog.md" }
}
variant.artifacts.use(copyTask)
.wiredWith { task -> task.destinationDir }
.toReplace(ArtifactKind.DIRECTORY, Artifact.Category.OUTPUTS, "MERGED_ASSETS")
}
}
Код: Выделить всё
variant.mergeResourcesProvider.configure {
dependsOn(copyTask)
}
Примечание:
Код: Выделить всё
android-gradle-plugin = { module = "com.android.tools.build:gradle", version.ref = "9.0.1" }Код: Выделить всё
distributionUrl=https\://services.gradle.org/distributions/gradle-9.2.1-bin.zipПодробнее здесь: https://stackoverflow.com/questions/798 ... ic-flavors
Мобильная версия