Android Gradle Convention Plugin: Buildtypkonfigurationen, die nicht erstellt werden, wenn Buildtypen in Moduls Build.gr

Post a reply

Smilies
:) :( :oops: :chelo: :roll: :wink: :muza: :sorry: :angel: :read: *x) :clever:
View more smilies

BBCode is ON
[img] is ON
[flash] is OFF
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: Android Gradle Convention Plugin: Buildtypkonfigurationen, die nicht erstellt werden, wenn Buildtypen in Moduls Build.gr

by Anonymous » 26 Aug 2025, 10:33

Problem < /h2>
Ich verwende ein Android Gradle Convention -Plugin, um meine Build -Konfiguration über Module hinweg zu standardisieren. Ich habe jedoch ein Problem mit Build -Typ -Konfigurationen

Code: Select all

stagingImplementation
, StagingAPI usw.) werden automatisch erstellt. StagingImplementation (libs.pluto)

Erstellen von Build -Typen im Konventionsplugin reduziert die Wiederverwendbarkeit, da verschiedene Module möglicherweise unterschiedliche Build -Typen benötigen.

Code: Select all

AndroidApplicationConventionPlugin.kt
):

Code: Select all

class AndroidApplicationConventionPlugin : Plugin {
override fun apply(target: Project) {
with(target) {
with(pluginManager) {
apply("com.android.application")
apply("org.jetbrains.kotlin.android")
}

extensions.configure {
defaultConfig {
targetSdk = 36
}
buildFeatures {
buildConfig = true
}
configureKotlinAndroid(this)
}
}
}
}
< /code>
[b] App -Modul (APP -Modul (build.gradle.kts
): [/b]

Code: Select all

plugins {
alias(libs.plugins.dogus.android.application) // My convention plugin
alias(libs.plugins.dogus.android.application.compose)
// ... other plugins
}

android {
buildTypes {
create("staging") {
initWith(getByName("debug"))
// staging configuration
}
}
}

dependencies {
// This works:
debugImplementation(libs.pluto)
releaseImplementation(libs.pluto.no.op)

// This doesn't work - stagingImplementation configuration doesn't exist:
// stagingImplementation(libs.pluto)

// Have to use this instead:
add("stagingImplementation", libs.pluto)
}
< /code>
 Frage < /h2>
Wie kann ich mein Kongress -Plugin erkennen lassen, die in einzelnen Modulen erstellte Buildtypen erstellt und automatisch die entsprechenden Konfigurationen erstellen (erstellen Sie automatisch die entsprechenden Konfigurationen (stagingImplementation
, StagingAPI usw.) Ohne hartcodierende spezifische Buildtypen im Kongress -Plugin selbst? 8.x
[*] Gradle: 8.x
[*] Kotlin DSL

Top