diff --git a/build-logic/android-plugins/build.gradle.kts b/build-logic/android-plugins/build.gradle.kts index 64ea3f66..14c32daf 100644 --- a/build-logic/android-plugins/build.gradle.kts +++ b/build-logic/android-plugins/build.gradle.kts @@ -30,6 +30,10 @@ gradlePlugin { id = "dev.msfjarvis.claw.android-application" implementationClass = "dev.msfjarvis.aps.gradle.ApplicationPlugin" } + register("android-common") { + id = "dev.msfjarvis.claw.android-common" + implementationClass = "dev.msfjarvis.aps.gradle.AndroidCommonPlugin" + } register("android-library") { id = "dev.msfjarvis.claw.android-library" implementationClass = "dev.msfjarvis.aps.gradle.LibraryPlugin" diff --git a/build-logic/android-plugins/src/main/kotlin/dev/msfjarvis/aps/gradle/AndroidCommon.kt b/build-logic/android-plugins/src/main/kotlin/dev/msfjarvis/aps/gradle/AndroidCommonPlugin.kt similarity index 62% rename from build-logic/android-plugins/src/main/kotlin/dev/msfjarvis/aps/gradle/AndroidCommon.kt rename to build-logic/android-plugins/src/main/kotlin/dev/msfjarvis/aps/gradle/AndroidCommonPlugin.kt index 4eb47138..e8452a95 100644 --- a/build-logic/android-plugins/src/main/kotlin/dev/msfjarvis/aps/gradle/AndroidCommon.kt +++ b/build-logic/android-plugins/src/main/kotlin/dev/msfjarvis/aps/gradle/AndroidCommonPlugin.kt @@ -1,14 +1,16 @@ package dev.msfjarvis.aps.gradle +import com.android.build.api.dsl.TestExtension import com.android.build.gradle.TestedExtension import org.gradle.api.JavaVersion +import org.gradle.api.Plugin import org.gradle.api.Project -import org.gradle.kotlin.dsl.configure +import org.gradle.kotlin.dsl.findByType @Suppress("UnstableApiUsage") -object AndroidCommon { - fun configure(project: Project) { - project.extensions.configure { +class AndroidCommonPlugin : Plugin { + override fun apply(project: Project) { + project.extensions.findByType()?.run { setCompileSdkVersion(31) defaultConfig { minSdk = 26 @@ -35,6 +37,22 @@ object AndroidCommon { targetCompatibility = JavaVersion.VERSION_11 } + testOptions { + animationsDisabled = true + unitTests.isReturnDefaultValues = true + } + } + project.extensions.findByType()?.run { + compileSdk = 31 + defaultConfig { + minSdk = 26 + targetSdk = 31 + } + compileOptions { + sourceCompatibility = JavaVersion.VERSION_11 + targetCompatibility = JavaVersion.VERSION_11 + } + testOptions { animationsDisabled = true unitTests.isReturnDefaultValues = true diff --git a/build-logic/android-plugins/src/main/kotlin/dev/msfjarvis/aps/gradle/ApplicationPlugin.kt b/build-logic/android-plugins/src/main/kotlin/dev/msfjarvis/aps/gradle/ApplicationPlugin.kt index ec92d41a..c44b40d5 100644 --- a/build-logic/android-plugins/src/main/kotlin/dev/msfjarvis/aps/gradle/ApplicationPlugin.kt +++ b/build-logic/android-plugins/src/main/kotlin/dev/msfjarvis/aps/gradle/ApplicationPlugin.kt @@ -15,7 +15,7 @@ class ApplicationPlugin : Plugin { override fun apply(project: Project) { project.pluginManager.apply(AppPlugin::class) - AndroidCommon.configure(project) + project.pluginManager.apply(AndroidCommonPlugin::class) project.extensions.getByType().run { adbOptions.installOptions("--user 0") diff --git a/build-logic/android-plugins/src/main/kotlin/dev/msfjarvis/aps/gradle/LibraryPlugin.kt b/build-logic/android-plugins/src/main/kotlin/dev/msfjarvis/aps/gradle/LibraryPlugin.kt index 4d2c7ee3..d275015c 100644 --- a/build-logic/android-plugins/src/main/kotlin/dev/msfjarvis/aps/gradle/LibraryPlugin.kt +++ b/build-logic/android-plugins/src/main/kotlin/dev/msfjarvis/aps/gradle/LibraryPlugin.kt @@ -10,6 +10,6 @@ class LibraryPlugin : Plugin { override fun apply(project: Project) { project.pluginManager.apply(LibraryPlugin::class) - AndroidCommon.configure(project) + project.pluginManager.apply(AndroidCommonPlugin::class) } }