From 7bb0bbbb46c87334f415ae86a19ae52dff4351f8 Mon Sep 17 00:00:00 2001 From: QIU Date: Mon, 3 Aug 2026 09:25:53 +0000 Subject: [PATCH] build: load release signing config from local keystore.properties Conditionally applies the BG7NTA signingConfig when keystore.properties exists (gitignored). CI signs via apksigner with GitHub Secrets, so this only affects local builds. --- app/build.gradle.kts | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 1199060a..85667cdf 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -1,3 +1,29 @@ +import java.util.Properties + plugins { alias(libs.plugins.convention.applicationPlugin) } + +// Load signing config from keystore.properties (gitignored, never commit credentials) +val keystoreProperties = Properties().apply { + val propsFile = rootProject.file("keystore.properties") + if (propsFile.exists()) propsFile.inputStream().use { load(it) } +} + +android { + signingConfigs { + if (keystoreProperties["storeFile"] != null) { + create("release") { + storeFile = rootProject.file(keystoreProperties["storeFile"] as String) + storePassword = keystoreProperties["storePassword"] as String + keyAlias = keystoreProperties["keyAlias"] as String + keyPassword = keystoreProperties["keyPassword"] as String + } + } + } + buildTypes { + release { + signingConfig = signingConfigs.findByName("release") + } + } +}