forked from firka/firka
107 lines
2.9 KiB
Kotlin
107 lines
2.9 KiB
Kotlin
import java.io.FileInputStream
|
|
import java.util.Properties
|
|
|
|
plugins {
|
|
id("com.android.application")
|
|
id("kotlin-android")
|
|
id("org.jetbrains.kotlin.plugin.compose") version "2.1.0"
|
|
// The Flutter Gradle Plugin must be applied after the Android and Kotlin Gradle plugins.
|
|
id("dev.flutter.flutter-gradle-plugin")
|
|
}
|
|
|
|
fun loadProperties(file: File): Properties {
|
|
val properties = Properties()
|
|
FileInputStream(file).use { inputStream ->
|
|
properties.load(inputStream)
|
|
}
|
|
return properties
|
|
}
|
|
|
|
android {
|
|
namespace = "app.firka.naplo"
|
|
compileSdk = flutter.compileSdkVersion
|
|
ndkVersion = "28.2.13676358"
|
|
|
|
compileOptions {
|
|
sourceCompatibility = JavaVersion.VERSION_17
|
|
targetCompatibility = JavaVersion.VERSION_17
|
|
}
|
|
|
|
buildFeatures {
|
|
compose = true
|
|
}
|
|
|
|
kotlinOptions {
|
|
jvmTarget = JavaVersion.VERSION_17.toString()
|
|
}
|
|
|
|
defaultConfig {
|
|
applicationId = "app.firka.naplo"
|
|
// You can update the following values to match your application needs.
|
|
// For more information, see: https://flutter.dev/to/review-gradle-config.
|
|
minSdk = 29
|
|
targetSdk = 36
|
|
versionCode = flutter.versionCode
|
|
versionName = flutter.versionName
|
|
}
|
|
|
|
val secretsDir = File(projectDir.absolutePath, "../../../secrets/")
|
|
val propsFile = File(secretsDir, "keystore.properties")
|
|
|
|
if (propsFile.exists()) {
|
|
val props = loadProperties(propsFile)
|
|
val store = File(secretsDir, props["storeFile"].toString())
|
|
|
|
signingConfigs {
|
|
create("release") {
|
|
storeFile = store
|
|
storePassword = props["storePassword"] as String
|
|
keyPassword = props["keyPassword"] as String
|
|
keyAlias = props["keyAlias"] as String
|
|
}
|
|
}
|
|
}
|
|
|
|
buildTypes {
|
|
getByName("debug") {
|
|
applicationIdSuffix = ".debug"
|
|
versionNameSuffix = "-debug"
|
|
}
|
|
release {
|
|
val config = signingConfigs.findByName("release")
|
|
|
|
if (config != null) {
|
|
signingConfig = config
|
|
}
|
|
|
|
proguardFiles(getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro")
|
|
}
|
|
}
|
|
}
|
|
dependencies {
|
|
implementation("androidx.wear:wear-ongoing:1.0.0")
|
|
implementation("androidx.glance:glance-appwidget:1.1.1")
|
|
}
|
|
|
|
flutter {
|
|
source = "../.."
|
|
}
|
|
|
|
fun checkReleaseKey() {
|
|
val secretsDir = File(projectDir.absolutePath, "../../../secrets/")
|
|
val propsFile = File(secretsDir, "keystore.properties")
|
|
|
|
if (propsFile.exists()) {
|
|
val props = loadProperties(propsFile)
|
|
val store = File(secretsDir, props["storeFile"].toString())
|
|
|
|
println(
|
|
"Signing with:\n" +
|
|
"\t- store: ${store.name}\n" +
|
|
"\t- key: ${props["keyAlias"]}"
|
|
)
|
|
} else {
|
|
throw Exception("Release keystore not found!")
|
|
}
|
|
}
|