From 25dce205284ef19fda4572961f56265d00d8aa14 Mon Sep 17 00:00:00 2001 From: xiandanin Date: Thu, 1 Dec 2022 13:35:52 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E6=94=AF=E6=8C=81productFlavorName?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/kotlin/com/tencent/vasdolly/plugin/VasDollyPlugin.kt | 3 ++- .../com/tencent/vasdolly/plugin/task/ApkChannelPackageTask.kt | 2 ++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/plugin/src/main/kotlin/com/tencent/vasdolly/plugin/VasDollyPlugin.kt b/plugin/src/main/kotlin/com/tencent/vasdolly/plugin/VasDollyPlugin.kt index bd52414..aade063 100644 --- a/plugin/src/main/kotlin/com/tencent/vasdolly/plugin/VasDollyPlugin.kt +++ b/plugin/src/main/kotlin/com/tencent/vasdolly/plugin/VasDollyPlugin.kt @@ -109,7 +109,8 @@ class VasDollyPlugin : Plugin { if (project.hasProperty(PROPERTY_CHANNELS)) { val channels = project.properties[PROPERTY_CHANNELS] as String if (channels.isNotEmpty()) { - channelList = channels.split(",") + channelList.clear() + channelList.addAll(channels.split(",")) } if (channelList.isEmpty()) { throw InvalidUserDataException("Property(${PROPERTY_CHANNELS}) channel list is empty , please fix it") diff --git a/plugin/src/main/kotlin/com/tencent/vasdolly/plugin/task/ApkChannelPackageTask.kt b/plugin/src/main/kotlin/com/tencent/vasdolly/plugin/task/ApkChannelPackageTask.kt index 57d09cb..7f9a1c3 100644 --- a/plugin/src/main/kotlin/com/tencent/vasdolly/plugin/task/ApkChannelPackageTask.kt +++ b/plugin/src/main/kotlin/com/tencent/vasdolly/plugin/task/ApkChannelPackageTask.kt @@ -124,6 +124,8 @@ open class ApkChannelPackageTask : ChannelPackageTask() { val keyValue: MutableMap = mutableMapOf() keyValue["appName"] = project.name + keyValue["productFlavorName"] = variant?.flavorName ?: "" + keyValue["channelName"] = channel keyValue["flavorName"] = channel keyValue["buildType"] = variant?.buildType ?: "" keyValue["versionName"] = outInfo?.versionName?.get() ?: "" From 2e7c50b978cfc2016819bab4849ca0665ec569d6 Mon Sep 17 00:00:00 2001 From: xiandanin Date: Thu, 15 Dec 2022 20:55:17 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E5=A4=9AFlavor=E6=A8=A1=E5=BC=8F=E6=97=B6?= =?UTF-8?q?=E5=A4=9A=E5=88=9B=E5=BB=BA=E4=B8=80=E7=BA=A7=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E5=A4=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../vasdolly/plugin/task/ApkChannelPackageTask.kt | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/plugin/src/main/kotlin/com/tencent/vasdolly/plugin/task/ApkChannelPackageTask.kt b/plugin/src/main/kotlin/com/tencent/vasdolly/plugin/task/ApkChannelPackageTask.kt index 7f9a1c3..6ccca83 100644 --- a/plugin/src/main/kotlin/com/tencent/vasdolly/plugin/task/ApkChannelPackageTask.kt +++ b/plugin/src/main/kotlin/com/tencent/vasdolly/plugin/task/ApkChannelPackageTask.kt @@ -35,6 +35,14 @@ open class ApkChannelPackageTask : ChannelPackageTask() { generateChannelApk(); } + private fun getOutputDir(): File? { + if (variant?.flavorName?.isNotEmpty() == true) { + return File(channelExtension?.outputDir, variant!!.flavorName!!) + } else { + return channelExtension?.outputDir + } + } + /*** * check channel plugin params */ @@ -63,7 +71,7 @@ open class ApkChannelPackageTask : ChannelPackageTask() { throw InvalidUserDataException("Task $name channel is null") } channelExtension?.checkParams() - println("Task $name, channel files outputDir:${channelExtension?.outputDir?.absolutePath}") + println("Task $name, channel files outputDir:${getOutputDir()?.absolutePath}") } @Suppress("PrivateApi") @@ -93,7 +101,7 @@ open class ApkChannelPackageTask : ChannelPackageTask() { * 根据签名类型生成不同的渠道包 */ private fun generateChannelApk() { - val outputDir = channelExtension?.outputDir + val outputDir = getOutputDir() println("generateChannelApk baseApk:${baseApk?.absolutePath},outputDir:${outputDir?.path}") val signingConfig = variant?.signingConfig!! val lowMemory = channelExtension?.lowMemory ?: false From a1d8ff72e04fdf63586429735005f520f7955b60 Mon Sep 17 00:00:00 2001 From: xiandanin Date: Fri, 16 Dec 2022 16:15:34 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E6=B8=85=E7=90=86=E6=97=A7=E7=9A=84apk?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tencent/vasdolly/plugin/task/ApkChannelPackageTask.kt | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/plugin/src/main/kotlin/com/tencent/vasdolly/plugin/task/ApkChannelPackageTask.kt b/plugin/src/main/kotlin/com/tencent/vasdolly/plugin/task/ApkChannelPackageTask.kt index 6ccca83..cddff2a 100644 --- a/plugin/src/main/kotlin/com/tencent/vasdolly/plugin/task/ApkChannelPackageTask.kt +++ b/plugin/src/main/kotlin/com/tencent/vasdolly/plugin/task/ApkChannelPackageTask.kt @@ -102,6 +102,12 @@ open class ApkChannelPackageTask : ChannelPackageTask() { */ private fun generateChannelApk() { val outputDir = getOutputDir() + // 清理旧的apk + outputDir?.listFiles()?.forEach { file -> + if (file.name.endsWith(".apk")) { + file.delete() + } + } println("generateChannelApk baseApk:${baseApk?.absolutePath},outputDir:${outputDir?.path}") val signingConfig = variant?.signingConfig!! val lowMemory = channelExtension?.lowMemory ?: false