You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
140 lines
3.6 KiB
140 lines
3.6 KiB
import org.gradle.language.nativeplatform.internal.BuildType
|
|
import java.io.FileInputStream
|
|
import java.util.Properties
|
|
|
|
plugins {
|
|
id("com.android.application")
|
|
id("kotlin-android")
|
|
id("kotlin-kapt")
|
|
id("dagger.hilt.android.plugin")
|
|
id("com.starter.easylauncher")
|
|
}
|
|
|
|
// Keystore
|
|
val keystorePropertiesFile = rootProject.file("keys/keystore.properties")
|
|
val keystoreProperties = Properties()
|
|
keystoreProperties.load(FileInputStream(keystorePropertiesFile))
|
|
|
|
android {
|
|
namespace = "fr.iut.alldev.allin"
|
|
compileSdk = libs.versions.compileSdk.get().toInt()
|
|
|
|
defaultConfig {
|
|
applicationId = "fr.iut.alldev.allin"
|
|
|
|
minSdk = libs.versions.minSdk.get().toInt()
|
|
targetSdk = libs.versions.targetSdk.get().toInt()
|
|
|
|
versionCode = 1
|
|
versionName = "1.0"
|
|
|
|
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
|
|
vectorDrawables {
|
|
useSupportLibrary = true
|
|
}
|
|
}
|
|
|
|
|
|
signingConfigs {
|
|
named(BuildType.DEBUG.name) {
|
|
storeFile = file(keystoreProperties["debugStoreFile"].toString())
|
|
}
|
|
register(BuildType.RELEASE.name) {
|
|
storeFile = file(keystoreProperties["releaseStoreFile"].toString())
|
|
storePassword = keystoreProperties["passwordRelease"].toString()
|
|
keyAlias = keystoreProperties["aliasRelease"].toString()
|
|
keyPassword = keystoreProperties["passwordRelease"].toString()
|
|
}
|
|
}
|
|
|
|
buildTypes {
|
|
debug {
|
|
isMinifyEnabled = false
|
|
versionNameSuffix = "-debug"
|
|
applicationIdSuffix = ".debug"
|
|
signingConfig = signingConfigs.getByName(BuildType.DEBUG.name)
|
|
}
|
|
release {
|
|
isMinifyEnabled = true
|
|
isShrinkResources = true
|
|
signingConfig = signingConfigs.getByName(BuildType.RELEASE.name)
|
|
proguardFiles(getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro")
|
|
}
|
|
}
|
|
buildFeatures {
|
|
compose = true
|
|
buildConfig = true
|
|
}
|
|
|
|
composeOptions {
|
|
kotlinCompilerExtensionVersion = libs.versions.composeCompiler.get()
|
|
}
|
|
|
|
packaging {
|
|
resources {
|
|
excludes += "/META-INF/{AL2.0,LGPL2.1}"
|
|
}
|
|
}
|
|
|
|
flavorDimensions += listOf("env")
|
|
productFlavors {
|
|
create("dev") {
|
|
dimension = "env"
|
|
versionNameSuffix = "-dev"
|
|
applicationIdSuffix = ".dev"
|
|
}
|
|
|
|
create("prod") {
|
|
dimension = "env"
|
|
}
|
|
}
|
|
}
|
|
|
|
easylauncher {
|
|
buildTypes {
|
|
register(BuildType.DEBUG.name).configure {
|
|
filters(redRibbonFilter())
|
|
}
|
|
}
|
|
|
|
productFlavors {
|
|
register("dev") {
|
|
filters(chromeLike())
|
|
}
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
implementation(project(":data"))
|
|
|
|
// Android
|
|
implementation(libs.bundles.android)
|
|
|
|
// Lifecycle
|
|
implementation(libs.bundles.androidx.lifecycle)
|
|
|
|
// Compose
|
|
implementation(platform(libs.compose.bom))
|
|
implementation(libs.bundles.compose)
|
|
|
|
// Hilt
|
|
implementation(libs.hilt.android)
|
|
kapt(libs.hilt.compiler)
|
|
implementation(libs.hilt.navigation.compose)
|
|
|
|
// Timber
|
|
implementation(libs.timber)
|
|
|
|
// Squircle
|
|
implementation(libs.smoothCornerRect)
|
|
|
|
// Tests
|
|
testImplementation(libs.test.junit)
|
|
androidTestImplementation(libs.test.junit)
|
|
androidTestImplementation(libs.test.espresso)
|
|
androidTestImplementation(libs.test.androidx.junit)
|
|
androidTestImplementation(libs.hilt.androidTesting)
|
|
kaptAndroidTest(libs.hilt.androidCompiler)
|
|
androidTestImplementation(libs.ui.test.junit)
|
|
debugImplementation(libs.ui.test.manifest)
|
|
} |