chore: migrate build script to kts

This commit is contained in:
PeanutMelonSeedBigAlmond
2024-05-24 22:19:30 +08:00
parent a633e22ea5
commit b4087d4bcb
6 changed files with 136 additions and 134 deletions

View File

@@ -1,91 +0,0 @@
def localProperties = new Properties()
def localPropertiesFile = rootProject.file('local.properties')
if (localPropertiesFile.exists()) {
localPropertiesFile.withReader('UTF-8') { reader ->
localProperties.load(reader)
}
}
def flutterRoot = localProperties.getProperty('flutter.sdk')
if (flutterRoot == null) {
throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.")
}
def flutterVersionCode = localProperties.getProperty('flutter.versionCode')
if (flutterVersionCode == null) {
flutterVersionCode = '1'
}
def flutterVersionName = localProperties.getProperty('flutter.versionName')
if (flutterVersionName == null) {
flutterVersionName = '1.0'
}
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
android {
namespace "com.lifegpc.ehf"
compileSdkVersion 34
ndkVersion flutter.ndkVersion
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
kotlinOptions {
jvmTarget = '1.8'
}
sourceSets {
main.java.srcDirs += 'src/main/kotlin'
}
defaultConfig {
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
applicationId "com.lifegpc.ehf"
// You can update the following values to match your application needs.
// For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration.
minSdkVersion 23
targetSdkVersion 33
versionCode flutterVersionCode.toInteger()
versionName flutterVersionName
}
signingConfigs {
release {
def keystoreFile = file("keystore.jks")
def keyAliasEnv = System.getenv("SIGNING_KEY_ALIAS")
def keystorePasswordEnv = System.getenv("SIGNING_STORE_PASSWORD")
def keyPasswordEnv = System.getenv("SIGNING_STORE_PASSWORD")
storeFile keystoreFile
storePassword keystorePasswordEnv
keyAlias keyAliasEnv
keyPassword keyPasswordEnv
}
}
buildTypes {
release {
if (System.getenv("CI") == "true") {
signingConfig signingConfigs.release
} else {
signingConfig signingConfigs.debug
}
}
}
}
flutter {
source '../..'
}
dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
implementation 'com.github.DylanCaiCoding:MMKV-KTX:1.2.16'
implementation 'androidx.documentfile:documentfile:1.0.1'
implementation "org.greenrobot:eventbus:3.3.1"
}

View File

@@ -0,0 +1,72 @@
plugins {
id("com.android.application")
id("org.jetbrains.kotlin.android")
id("dev.flutter.flutter-gradle-plugin")
}
android {
namespace = "com.lifegpc.ehf"
compileSdk = 34
ndkVersion = flutter.ndkVersion
compileOptions {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
}
kotlinOptions {
jvmTarget = "1.8"
}
sourceSets {
getByName("main") {
java {
srcDirs("src/main/kotlin")
}
}
}
defaultConfig {
applicationId = "com.lifegpc.ehf"
minSdk = 23
targetSdk = 34
versionCode = flutter.versionCode()
versionName = flutter.versionName()
}
signingConfigs {
maybeCreate("release").apply {
val keystoreFile = File("keystore.jks").also { if (!it.exists()) return@apply }
val keyAliasEnv = System.getenv("SIGNING_KEY_ALIAS") ?: return@apply
val keystorePasswordEnv = System.getenv("SIGNING_STORE_PASSWORD") ?: return@apply
val keyPasswordEnv = System.getenv("SIGNING_STORE_PASSWORD") ?: return@apply
storeFile = keystoreFile
storePassword = keystorePasswordEnv
keyAlias = keyAliasEnv
keyPassword = keyPasswordEnv
}
}
buildTypes {
release {
signingConfig = if (System.getenv("CI") == "true") {
signingConfigs["release"]
} else {
signingConfigs["debug"]
}
}
}
}
flutter {
source = "../.."
}
dependencies {
// implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.10")
implementation("com.github.DylanCaiCoding:MMKV-KTX:1.2.16")
implementation("androidx.documentfile:documentfile:1.0.1")
implementation("org.greenrobot:eventbus:3.3.1")
}

View File

@@ -1,32 +0,0 @@
buildscript {
ext.kotlin_version = '1.7.10'
repositories {
google()
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:7.3.0'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
allprojects {
repositories {
google()
mavenCentral()
maven { url 'https://www.jitpack.io' }
}
}
rootProject.buildDir = '../build'
subprojects {
project.buildDir = "${rootProject.buildDir}/${project.name}"
}
subprojects {
project.evaluationDependsOn(':app')
}
tasks.register("clean", Delete) {
delete rootProject.buildDir
}

29
android/build.gradle.kts Normal file
View File

@@ -0,0 +1,29 @@
//buildscript {
// repositories {
// google()
// mavenCentral()
// }
//
// dependencies {
// classpath("com.android.tools.build:gradle:7.3.0")
// classpath ("org.jetbrains.kotlin:kotlin-gradle-plugin:1.7.10")
// }
//}
allprojects {
repositories {
google()
mavenCentral()
maven("https://www.jitpack.io")
}
}
rootProject.setBuildDir("../build")
subprojects {
project.setBuildDir("${rootProject.buildDir}/${project.name}")
project.evaluationDependsOn(":app")
}
task<Delete>("clean") {
delete(rootProject.buildDir)
}

View File

@@ -1,11 +0,0 @@
include ':app'
def localPropertiesFile = new File(rootProject.projectDir, "local.properties")
def properties = new Properties()
assert localPropertiesFile.exists()
localPropertiesFile.withReader("UTF-8") { reader -> properties.load(reader) }
def flutterSdkPath = properties.getProperty("flutter.sdk")
assert flutterSdkPath != null, "flutter.sdk not set in local.properties"
apply from: "$flutterSdkPath/packages/flutter_tools/gradle/app_plugin_loader.gradle"

View File

@@ -0,0 +1,35 @@
pluginManagement {
val properties1 =java.util.Properties()
java.io.FileInputStream("local.properties").use {
properties1.load(it)
}
val flutterSdkPath = properties1.getProperty("flutter.sdk")
assert(flutterSdkPath != null) { "flutter.sdk not set in local.properties" }
includeBuild("$flutterSdkPath/packages/flutter_tools/gradle")
repositories {
google()
mavenCentral()
gradlePluginPortal()
}
}
plugins {
id ("dev.flutter.flutter-plugin-loader") version "1.0.0"
id ("com.android.application") version "7.3.0" apply false
id ("org.jetbrains.kotlin.android") version "1.7.10" apply false
}
//val localPropertiesFile = File(rootProject.projectDir, "local.properties")
//val properties = Properties()
//
//assert(localPropertiesFile.exists())
//localPropertiesFile.reader(Charset.forName("UTF-8")).use { reader -> properties.load(reader) }
//
//val flutterSdkPath = properties.getProperty("flutter.sdk")
//assert(flutterSdkPath != null) { "flutter.sdk not set in local.properties" }
//apply {
// from("$flutterSdkPath/packages/flutter_tools/gradle/app_plugin_loader.gradle")
//}
include(":app")