diff --git a/.secret/key_store_secret.json b/.secret/key_store_secret.json new file mode 100644 index 0000000..8fd7367 --- /dev/null +++ b/.secret/key_store_secret.json @@ -0,0 +1,6 @@ +{ + "keyAlias": "public", + "keyPassword": "123456", + "storeFileName": "universal.p12", + "storePassword": "123456" +} \ No newline at end of file diff --git a/keystore/public b/.secret/universal.p12 similarity index 100% rename from keystore/public rename to .secret/universal.p12 diff --git a/app/build.gradle b/app/build.gradle index c79cc3d..6c9d2bc 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -1,38 +1,51 @@ +import groovy.json.JsonSlurper + plugins { id 'com.android.application' - id 'kotlin-android' - id 'com.google.devtools.ksp' version '1.8.20-1.0.10' + id 'org.jetbrains.kotlin.android' + id 'com.google.devtools.ksp' } android { signingConfigs { - debug { - storeFile file('../keystore/public') - storePassword '123456' - keyAlias 'public' - keyPassword '123456' + universal { + def dirPath = rootProject.ext.app.signingConfigs.secretConfigsDirPath + def fileName = rootProject.ext.app.signingConfigs.secretConfigsFileName + def configs = new JsonSlurper().parse(file("${dirPath}/${fileName}")) + keyAlias configs.keyAlias + keyPassword configs.keyPassword + storeFile file("${dirPath}/${configs.storeFileName}") + storePassword configs.storePassword v1SigningEnabled true v2SigningEnabled true } } - compileSdkVersion 33 + + namespace 'com.fankes.tsbattery' + compileSdk rootProject.ext.android.compileSdk defaultConfig { - applicationId "com.fankes.tsbattery" - minSdk 22 - targetSdk 33 - versionCode rootProject.ext.appVersionCode - versionName rootProject.ext.appVersionName + applicationId 'com.fankes.tsbattery' - testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" + minSdk rootProject.ext.android.minSdk + targetSdk rootProject.ext.android.targetSdk + + versionCode rootProject.ext.app.versionCode + versionName rootProject.ext.app.versionName + + testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner' } buildTypes { + debug { + minifyEnabled false + signingConfig signingConfigs.universal + } release { - minifyEnabled rootProject.ext.enableR8 - shrinkResources rootProject.ext.enableR8 - zipAlignEnabled rootProject.ext.enableR8 - signingConfig signingConfigs.debug + minifyEnabled true + shrinkResources true + zipAlignEnabled true + signingConfig signingConfigs.universal proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } } diff --git a/build.gradle b/build.gradle index 05487d6..c27060a 100644 --- a/build.gradle +++ b/build.gradle @@ -2,12 +2,23 @@ plugins { id 'com.android.application' version '7.4.1' apply false id 'com.android.library' version '7.4.1' apply false id 'org.jetbrains.kotlin.android' version '1.8.20' apply false + id 'com.google.devtools.ksp' version '1.8.20-1.0.10' apply false } ext { - appVersionName = "4.2" - appVersionCode = 27 - enableR8 = true + android = [ + compileSdk: 33, + minSdk : 21, + targetSdk : 33 + ] + app = [ + versionName : '4.2', + versionCode : 27, + signingConfigs: [ + secretConfigsDirPath : "${projectDir.getAbsolutePath()}/.secret", + secretConfigsFileName: "key_store_secret.json" + ] + ] } task clean(type: Delete) {