From c2db8b38e9458577fd3dfefc81b86ef5da8b56a7 Mon Sep 17 00:00:00 2001 From: gongyun Date: Thu, 28 May 2026 00:46:52 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dapk=20build=20error?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- android/app/build.gradle.kts | 20 +++++++++++++++----- android/gradle.properties | 6 +++++- 2 files changed, 20 insertions(+), 6 deletions(-) diff --git a/android/app/build.gradle.kts b/android/app/build.gradle.kts index 73f5882..5cf6d6e 100644 --- a/android/app/build.gradle.kts +++ b/android/app/build.gradle.kts @@ -30,6 +30,14 @@ if (keystorePropertiesFile.exists()) { keystoreProperties.load(FileInputStream(keystorePropertiesFile)) } +val releaseStoreFile = keystoreProperties.getProperty("storeFile")?.let { rootProject.file(it) } +val hasReleaseSigning = listOf( + "keyAlias", + "keyPassword", + "storePassword", +).all { !keystoreProperties.getProperty(it).isNullOrBlank() } && + releaseStoreFile?.exists() == true + android { namespace = "com.limo.cloudreve4_flutter" compileSdk = getLocalProperty("flutter.compileSdkVersion", 36) @@ -38,10 +46,12 @@ android { // 2. 配置签名选项 signingConfigs { create("release") { - keyAlias = keystoreProperties["keyAlias"] as String? - keyPassword = keystoreProperties["keyPassword"] as String? - storeFile = keystoreProperties["storeFile"]?.let { file(it) } - storePassword = keystoreProperties["storePassword"] as String? + if (hasReleaseSigning) { + keyAlias = keystoreProperties.getProperty("keyAlias") + keyPassword = keystoreProperties.getProperty("keyPassword") + storeFile = releaseStoreFile + storePassword = keystoreProperties.getProperty("storePassword") + } } } @@ -86,7 +96,7 @@ android { buildTypes { release { // 1. 将原来的 getByName("debug") 替换为 getByName("release") - signingConfig = signingConfigs.getByName("release") + signingConfig = signingConfigs.getByName(if (hasReleaseSigning) "release" else "debug") // 2. 建议同时开启混淆,这能大幅减小网盘应用的体积并保护代码 isMinifyEnabled = true diff --git a/android/gradle.properties b/android/gradle.properties index fbee1d8..d5109c3 100644 --- a/android/gradle.properties +++ b/android/gradle.properties @@ -1,2 +1,6 @@ -org.gradle.jvmargs=-Xmx8G -XX:MaxMetaspaceSize=4G -XX:ReservedCodeCacheSize=512m -XX:+HeapDumpOnOutOfMemoryError +org.gradle.jvmargs=-Xmx3072m -XX:MaxMetaspaceSize=1G -XX:ReservedCodeCacheSize=256m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 +org.gradle.workers.max=2 +org.gradle.vfs.watch=false +kotlin.compiler.execution.strategy=in-process +kotlin.incremental=false android.useAndroidX=true