tawasuyu

sergio/humanoid

HTML 50Markdown 1TOML 10 Definiciones

⎇ b7b92b8360b37bcb7fa6c023ff5d614b5e7635ff build.gradle.kts 31 líneas · 1.3 KB Historia crudo

firma de publicación para las nueve apps, en la raíz 2f085ae86 · Sergio ·

1import com.android.build.api.dsl.ApplicationExtension
2
3plugins {
4    alias(libs.plugins.android.application) apply false
5    alias(libs.plugins.kotlin.android) apply false
6    alias(libs.plugins.kotlin.compose) apply false
7}
8
9// Firma de publicación para las nueve apps, en un solo sitio.
10//
11// Las credenciales viven fuera del repo (~/.gradle/gradle.properties): aquí no
12// hay ni ruta ni contraseña que filtrar. Si no están —otra máquina, un clon
13// ajeno— el release simplemente sale sin firmar en vez de romper la compilación.
14//
15// La firma es la identidad de la app para Android: si cambia, el teléfono no
16// ofrece actualización, obliga a desinstalar. Por eso vive fuera y se respalda.
17subprojects {
18    plugins.withId("com.android.application") {
19        val almacen = (findProperty("rizomaKeystore") as String?)?.let(::file)
20        if (almacen?.exists() != true) return@withId
21        extensions.configure<ApplicationExtension> {
22            val firma = signingConfigs.create("publicacion") {
23                storeFile = almacen
24                storePassword = findProperty("rizomaKeystorePassword") as String?
25                keyAlias = findProperty("rizomaKeyAlias") as String?
26                keyPassword = findProperty("rizomaKeyPassword") as String?
27            }
28            buildTypes.getByName("release").signingConfig = firma
29        }
30    }
31}