2021-09-18 23:37:52 +02:00
|
|
|
import java.text.SimpleDateFormat
|
|
|
|
|
import java.util.*
|
|
|
|
|
|
|
|
|
|
plugins {
|
|
|
|
|
id("com.android.application")
|
|
|
|
|
id("kotlin-android")
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
android {
|
|
|
|
|
packagingOptions {
|
|
|
|
|
resources.excludes.add("META-INF/DEPENDENCIES")
|
|
|
|
|
resources.excludes.add("META-INF/LICENSE")
|
|
|
|
|
resources.excludes.add("META-INF/LICENSE.txt")
|
|
|
|
|
resources.excludes.add("META-INF/license.txt")
|
|
|
|
|
resources.excludes.add("META-INF/NOTICE")
|
|
|
|
|
resources.excludes.add("META-INF/NOTICE.txt")
|
|
|
|
|
resources.excludes.add("META-INF/notice.txt")
|
|
|
|
|
resources.excludes.add("META-INF/ASL2.0")
|
|
|
|
|
resources.excludes.add("META-INF/LICENSE.md")
|
|
|
|
|
resources.excludes.add("META-INF/NOTICE.md")
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
compileSdk = sdk.versions.compileSdk.get().toInt()
|
|
|
|
|
defaultConfig {
|
|
|
|
|
applicationId = "de.mm20.launcher2"
|
|
|
|
|
minSdk = sdk.versions.minSdk.get().toInt()
|
|
|
|
|
targetSdk = sdk.versions.targetSdk.get().toInt()
|
|
|
|
|
versionCode = versionCodeDate()
|
2022-07-12 15:02:52 +02:00
|
|
|
versionName = "1.13.1"
|
2022-01-25 17:55:57 +01:00
|
|
|
signingConfig = signingConfigs.getByName("debug")
|
2021-09-18 23:37:52 +02:00
|
|
|
}
|
|
|
|
|
buildTypes {
|
|
|
|
|
release {
|
|
|
|
|
applicationIdSuffix = ".release"
|
|
|
|
|
|
2022-02-08 21:20:54 +01:00
|
|
|
postprocessing {
|
2022-02-10 18:08:59 +01:00
|
|
|
isRemoveUnusedCode = false
|
2022-02-08 21:20:54 +01:00
|
|
|
isObfuscate = false
|
|
|
|
|
isOptimizeCode = false
|
|
|
|
|
}
|
2021-09-18 23:37:52 +02:00
|
|
|
|
|
|
|
|
versionNameSuffix = "-" + buildTime()
|
|
|
|
|
}
|
|
|
|
|
debug {
|
|
|
|
|
applicationIdSuffix = ".debug"
|
2022-02-14 14:36:28 +01:00
|
|
|
// Jetpack Compose is unusably laggy in debug builds, it's ridiculous
|
|
|
|
|
// This somehow seems to resolve that issue.
|
|
|
|
|
isDebuggable = false
|
2021-09-18 23:37:52 +02:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
configurations.all {
|
|
|
|
|
//Fixes Error: Duplicate class: com.google.common.util.concurrent.ListenableFuture
|
|
|
|
|
exclude(group = "com.google.guava", module = "listenablefuture")
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
compileOptions {
|
|
|
|
|
sourceCompatibility = JavaVersion.VERSION_1_8
|
|
|
|
|
targetCompatibility = JavaVersion.VERSION_1_8
|
|
|
|
|
}
|
|
|
|
|
kotlinOptions {
|
|
|
|
|
jvmTarget = JavaVersion.VERSION_1_8.toString()
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
lint {
|
2022-01-26 12:51:16 +01:00
|
|
|
abortOnError = false
|
2021-09-18 23:37:52 +02:00
|
|
|
}
|
2022-05-09 19:56:05 +02:00
|
|
|
namespace = "de.mm20.launcher2"
|
2021-09-18 23:37:52 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
fun buildTime(): String {
|
|
|
|
|
val df = SimpleDateFormat("yyyyMMdd")
|
|
|
|
|
return df.format(Date())
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
fun versionCodeDate(): Int {
|
2022-01-30 15:12:37 +01:00
|
|
|
val df = SimpleDateFormat("yyyyMMdd00")
|
2021-09-18 23:37:52 +02:00
|
|
|
return df.format(Date()).toInt()
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
dependencies {
|
|
|
|
|
implementation(libs.bundles.kotlin)
|
|
|
|
|
|
|
|
|
|
//Android Jetpack
|
|
|
|
|
implementation(libs.androidx.appcompat)
|
|
|
|
|
implementation(libs.androidx.cardview)
|
|
|
|
|
implementation(libs.androidx.browser)
|
|
|
|
|
implementation(libs.androidx.palette)
|
|
|
|
|
implementation(libs.androidx.fragment)
|
|
|
|
|
implementation(libs.androidx.core)
|
|
|
|
|
implementation(libs.androidx.exifinterface)
|
2021-12-12 13:59:28 +01:00
|
|
|
implementation(libs.materialcomponents.core)
|
2021-09-18 23:37:52 +02:00
|
|
|
implementation(libs.androidx.constraintlayout)
|
|
|
|
|
|
|
|
|
|
implementation(libs.bundles.androidx.lifecycle)
|
|
|
|
|
|
|
|
|
|
implementation(libs.androidx.work)
|
|
|
|
|
|
2022-01-20 22:40:32 +01:00
|
|
|
implementation(libs.coil.core)
|
|
|
|
|
implementation(libs.coil.svg)
|
2021-09-18 23:37:52 +02:00
|
|
|
|
|
|
|
|
implementation(libs.bundles.materialdialogs)
|
|
|
|
|
|
|
|
|
|
implementation(libs.draglinearlayout)
|
|
|
|
|
implementation(libs.viewpropertyobjectanimator)
|
|
|
|
|
|
2021-10-10 12:15:54 +02:00
|
|
|
implementation(libs.koin.android)
|
2021-10-02 18:35:30 +02:00
|
|
|
|
2022-01-15 19:01:12 +01:00
|
|
|
implementation(project(":accounts"))
|
2021-09-18 23:37:52 +02:00
|
|
|
implementation(project(":applications"))
|
2022-03-19 15:46:13 +01:00
|
|
|
implementation(project(":appshortcuts"))
|
2022-06-09 19:26:45 +02:00
|
|
|
implementation(project(":backup"))
|
2021-09-18 23:37:52 +02:00
|
|
|
implementation(project(":badges"))
|
|
|
|
|
implementation(project(":base"))
|
|
|
|
|
implementation(project(":calculator"))
|
|
|
|
|
implementation(project(":calendar"))
|
|
|
|
|
implementation(project(":contacts"))
|
|
|
|
|
implementation(project(":crashreporter"))
|
2021-10-10 12:15:54 +02:00
|
|
|
implementation(project(":currencies"))
|
2022-07-24 20:47:10 +02:00
|
|
|
implementation(project(":customattrs"))
|
2021-09-18 23:37:52 +02:00
|
|
|
implementation(project(":favorites"))
|
|
|
|
|
implementation(project(":files"))
|
|
|
|
|
implementation(project(":g-services"))
|
|
|
|
|
implementation(project(":i18n"))
|
|
|
|
|
implementation(project(":icons"))
|
|
|
|
|
implementation(project(":ktx"))
|
|
|
|
|
implementation(project(":ms-services"))
|
|
|
|
|
implementation(project(":music"))
|
|
|
|
|
implementation(project(":nextcloud"))
|
|
|
|
|
implementation(project(":notifications"))
|
|
|
|
|
implementation(project(":owncloud"))
|
|
|
|
|
implementation(project(":permissions"))
|
|
|
|
|
implementation(project(":preferences"))
|
|
|
|
|
implementation(project(":search"))
|
|
|
|
|
implementation(project(":transition"))
|
|
|
|
|
implementation(project(":unitconverter"))
|
|
|
|
|
implementation(project(":ui"))
|
|
|
|
|
implementation(project(":weather"))
|
|
|
|
|
implementation(project(":websites"))
|
|
|
|
|
implementation(project(":widgets"))
|
|
|
|
|
implementation(project(":wikipedia"))
|
2021-12-19 19:14:21 +01:00
|
|
|
implementation(project(":database"))
|
2021-09-18 23:37:52 +02:00
|
|
|
|
|
|
|
|
// Uncomment this if you want annoying notifications in your debug builds yelling at you how terrible your code is
|
|
|
|
|
//debugImplementation(libs.leakcanary)
|
|
|
|
|
}
|