104 lines
3 KiB
Text
104 lines
3 KiB
Text
|
|
import com.android.build.gradle.internal.tasks.factory.dependsOn
|
||
|
|
|
||
|
|
private val readAndUnderstoodLicense = false
|
||
|
|
|
||
|
|
plugins {
|
||
|
|
id("com.android.application")
|
||
|
|
id("org.jetbrains.kotlin.android")
|
||
|
|
id("io.gitlab.arturbosch.detekt")
|
||
|
|
}
|
||
|
|
|
||
|
|
android {
|
||
|
|
namespace = "io.github.domi04151309.home"
|
||
|
|
compileSdk = 34
|
||
|
|
|
||
|
|
defaultConfig {
|
||
|
|
applicationId = "io.github.domi04151309.home"
|
||
|
|
minSdk = 23
|
||
|
|
//noinspection EditedTargetSdkVersion
|
||
|
|
targetSdk = 34
|
||
|
|
versionCode = 1120
|
||
|
|
versionName = "1.12.0"
|
||
|
|
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
|
||
|
|
}
|
||
|
|
|
||
|
|
buildTypes {
|
||
|
|
debug {
|
||
|
|
isMinifyEnabled = true
|
||
|
|
isShrinkResources = true
|
||
|
|
proguardFiles(
|
||
|
|
getDefaultProguardFile("proguard-android-optimize.txt"),
|
||
|
|
"proguard-rules.pro",
|
||
|
|
)
|
||
|
|
}
|
||
|
|
release {
|
||
|
|
isMinifyEnabled = true
|
||
|
|
isShrinkResources = true
|
||
|
|
proguardFiles(
|
||
|
|
getDefaultProguardFile("proguard-android-optimize.txt"),
|
||
|
|
"proguard-rules.pro",
|
||
|
|
)
|
||
|
|
}
|
||
|
|
}
|
||
|
|
testOptions {
|
||
|
|
unitTests.isIncludeAndroidResources = true
|
||
|
|
}
|
||
|
|
buildFeatures {
|
||
|
|
buildConfig = true
|
||
|
|
}
|
||
|
|
compileOptions {
|
||
|
|
sourceCompatibility = JavaVersion.VERSION_17
|
||
|
|
targetCompatibility = JavaVersion.VERSION_17
|
||
|
|
}
|
||
|
|
kotlinOptions {
|
||
|
|
jvmTarget = "17"
|
||
|
|
}
|
||
|
|
detekt {
|
||
|
|
config.setFrom(file("detekt-config.yml"))
|
||
|
|
buildUponDefaultConfig = true
|
||
|
|
basePath = rootProject.projectDir.absolutePath
|
||
|
|
}
|
||
|
|
lint {
|
||
|
|
disable += "MissingTranslation"
|
||
|
|
}
|
||
|
|
project.tasks.preBuild.dependsOn("license")
|
||
|
|
}
|
||
|
|
|
||
|
|
tasks.register("license") {
|
||
|
|
doFirst {
|
||
|
|
val data =
|
||
|
|
file("./src/main/res/xml/pref_about.xml")
|
||
|
|
.readText()
|
||
|
|
.contains("app:key=\"license\"")
|
||
|
|
if (!data) {
|
||
|
|
throw Exception(
|
||
|
|
"Please note that removing the license from the about page is not allowed if you " +
|
||
|
|
"plan to publish your modified version of this app. " +
|
||
|
|
"Please read the project's LICENSE.",
|
||
|
|
)
|
||
|
|
}
|
||
|
|
if (!(
|
||
|
|
android.defaultConfig.applicationId?.contains("domi04151309") == true ||
|
||
|
|
readAndUnderstoodLicense
|
||
|
|
)
|
||
|
|
) {
|
||
|
|
throw Exception(
|
||
|
|
"Please make sure you have read and understood the LICENSE!",
|
||
|
|
)
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
dependencies {
|
||
|
|
implementation("androidx.appcompat:appcompat:1.7.1")
|
||
|
|
implementation("com.google.android.material:material:1.12.0")
|
||
|
|
implementation("androidx.preference:preference-ktx:1.2.1")
|
||
|
|
implementation("androidx.annotation:annotation:1.9.1")
|
||
|
|
implementation("com.android.volley:volley:1.2.1")
|
||
|
|
implementation("androidx.security:security-crypto-ktx:1.1.0-beta01")
|
||
|
|
implementation("com.github.skydoves:colorpickerview:2.3.0")
|
||
|
|
|
||
|
|
testImplementation("junit:junit:4.13.2")
|
||
|
|
testImplementation("org.robolectric:robolectric:4.14.1")
|
||
|
|
}
|