From 48784fd95e2cf68f22b990f495fca0edf160007c Mon Sep 17 00:00:00 2001 From: Ivan Gavrilovic Date: Wed, 20 Jun 2018 15:27:47 +0100 Subject: [PATCH] Use new API for getting the raw Android resources A new method has been added in the Android Gradle plugin 3.3.0. This commit switches from ussing the MergeResources task, and uses getAllRawAndroidResources API instead. Test: manually verified --- .../gradle/plugin/android/Android25ProjectHandler.kt | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/libraries/tools/kotlin-gradle-plugin/src/agp25/kotlin/org/jetbrains/kotlin/gradle/plugin/android/Android25ProjectHandler.kt b/libraries/tools/kotlin-gradle-plugin/src/agp25/kotlin/org/jetbrains/kotlin/gradle/plugin/android/Android25ProjectHandler.kt index c43e750f7c1..42265b17659 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/agp25/kotlin/org/jetbrains/kotlin/gradle/plugin/android/Android25ProjectHandler.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/agp25/kotlin/org/jetbrains/kotlin/gradle/plugin/android/Android25ProjectHandler.kt @@ -96,6 +96,13 @@ class Android25ProjectHandler(kotlinConfigurationTools: KotlinConfigurationTools variantData.addJavaSourceFoldersToModel(javaSourceDirectory) override fun getResDirectories(variantData: BaseVariant): List { + val getAllResourcesMethod = + variantData::class.java.methods.firstOrNull { it.name == "getAllRawAndroidResources" } + if (getAllResourcesMethod != null) { + val allResources = getAllResourcesMethod.invoke(variantData) as FileCollection + return allResources.files.toList() + } + return variantData.mergeResources?.computeResourceSetList0() ?: emptyList() }