mirror of
https://github.com/fromchat-messenger/app.git
synced 2026-09-22 19:15:05 +03:00
Allow Gradle desktop builds when Android signing keys are absent.
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -70,31 +70,41 @@ extensions.configure<ApplicationExtension> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
val keystorePropertiesFile = file("keys/keystore.properties")
|
||||||
|
val hasReleaseKeystore = keystorePropertiesFile.isFile && file("keys/release.jks").isFile
|
||||||
|
val hasDebugKeystore = keystorePropertiesFile.isFile && file("keys/debug.jks").isFile
|
||||||
|
|
||||||
signingConfigs {
|
signingConfigs {
|
||||||
val keystoreProperties = Properties().apply {
|
if (hasReleaseKeystore || hasDebugKeystore) {
|
||||||
load(file("keys/keystore.properties").inputStream())
|
val keystoreProperties = Properties().apply {
|
||||||
}
|
load(keystorePropertiesFile.inputStream())
|
||||||
|
}
|
||||||
|
|
||||||
fun Properties.password(key: String): String {
|
fun Properties.password(key: String): String {
|
||||||
val raw = getProperty(key)
|
val raw = getProperty(key)
|
||||||
?: error("Missing $key in keys/keystore.properties")
|
?: error("Missing $key in keys/keystore.properties")
|
||||||
return raw.trim().removeSurrounding("\"").removeSurrounding("'")
|
return raw.trim().removeSurrounding("\"").removeSurrounding("'")
|
||||||
}
|
}
|
||||||
|
|
||||||
create("release") {
|
if (hasReleaseKeystore) {
|
||||||
storeFile = file("keys/release.jks")
|
create("release") {
|
||||||
keyAlias = "key0"
|
storeFile = file("keys/release.jks")
|
||||||
storePassword = keystoreProperties.password("releaseStorePassword")
|
keyAlias = "key0"
|
||||||
keyPassword = keystoreProperties.password("releaseKeyPassword")
|
storePassword = keystoreProperties.password("releaseStorePassword")
|
||||||
enableV3Signing = true
|
keyPassword = keystoreProperties.password("releaseKeyPassword")
|
||||||
}
|
enableV3Signing = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
getByName("debug") {
|
if (hasDebugKeystore) {
|
||||||
storeFile = file("keys/debug.jks")
|
getByName("debug") {
|
||||||
keyAlias = "key0"
|
storeFile = file("keys/debug.jks")
|
||||||
storePassword = keystoreProperties.password("debugStorePassword")
|
keyAlias = "key0"
|
||||||
keyPassword = keystoreProperties.password("debugKeyPassword")
|
storePassword = keystoreProperties.password("debugStorePassword")
|
||||||
enableV3Signing = true
|
keyPassword = keystoreProperties.password("debugKeyPassword")
|
||||||
|
enableV3Signing = true
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -102,13 +112,17 @@ extensions.configure<ApplicationExtension> {
|
|||||||
debug {
|
debug {
|
||||||
applicationIdSuffix = ".beta"
|
applicationIdSuffix = ".beta"
|
||||||
versionNameSuffix = "-beta"
|
versionNameSuffix = "-beta"
|
||||||
signingConfig = signingConfigs.getByName("debug")
|
if (hasDebugKeystore) {
|
||||||
|
signingConfig = signingConfigs.getByName("debug")
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
release {
|
release {
|
||||||
isMinifyEnabled = true
|
isMinifyEnabled = true
|
||||||
isShrinkResources = true
|
isShrinkResources = true
|
||||||
signingConfig = signingConfigs.getByName("release")
|
if (hasReleaseKeystore) {
|
||||||
|
signingConfig = signingConfigs.getByName("release")
|
||||||
|
}
|
||||||
|
|
||||||
proguardFiles(
|
proguardFiles(
|
||||||
getDefaultProguardFile("proguard-android-optimize.txt"),
|
getDefaultProguardFile("proguard-android-optimize.txt"),
|
||||||
|
|||||||
Reference in New Issue
Block a user