2020-12-23 03:58:30 +00:00
|
|
|
plugins {
|
2023-08-01 00:35:39 +00:00
|
|
|
alias(libs.plugins.android.application)
|
|
|
|
alias(libs.plugins.kotlin.android)
|
|
|
|
alias(libs.plugins.kotlin.kapt)
|
|
|
|
alias(libs.plugins.hilt)
|
|
|
|
alias(libs.plugins.google.services)
|
2020-12-23 03:58:30 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
android {
|
2022-10-01 20:14:45 +00:00
|
|
|
namespace = "io.homeassistant.companion.android"
|
|
|
|
|
2023-08-01 00:35:39 +00:00
|
|
|
compileSdk = libs.versions.androidSdk.compile.get().toInt()
|
2020-12-23 03:58:30 +00:00
|
|
|
|
|
|
|
defaultConfig {
|
|
|
|
applicationId = "io.homeassistant.companion.android"
|
2023-08-01 00:35:39 +00:00
|
|
|
minSdk = libs.versions.androidSdk.wear.min.get().toInt()
|
|
|
|
targetSdk = libs.versions.androidSdk.wear.target.get().toInt()
|
2020-12-23 03:58:30 +00:00
|
|
|
|
2023-06-26 13:05:17 +00:00
|
|
|
versionName = project.version.toString()
|
2021-10-14 02:42:23 +00:00
|
|
|
// We add 1 because the app and wear versions need to have different version codes.
|
|
|
|
versionCode = (System.getenv("VERSION_CODE")?.toIntOrNull() ?: 1) + 1
|
2020-12-23 03:58:30 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
buildFeatures {
|
|
|
|
viewBinding = true
|
2021-11-03 00:52:28 +00:00
|
|
|
compose = true
|
2023-12-15 17:46:48 +00:00
|
|
|
buildConfig = true
|
2021-11-03 00:52:28 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
composeOptions {
|
2023-07-29 15:11:08 +00:00
|
|
|
kotlinCompilerExtensionVersion = libs.versions.compose.compiler.get()
|
2020-12-23 03:58:30 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
signingConfigs {
|
|
|
|
create("release") {
|
|
|
|
storeFile = file(System.getenv("KEYSTORE_PATH") ?: "release_keystore.keystore")
|
|
|
|
storePassword = System.getenv("KEYSTORE_PASSWORD") ?: ""
|
|
|
|
keyAlias = System.getenv("KEYSTORE_ALIAS") ?: ""
|
|
|
|
keyPassword = System.getenv("KEYSTORE_ALIAS_PASSWORD") ?: ""
|
2021-10-13 03:35:05 +00:00
|
|
|
enableV1Signing = true
|
|
|
|
enableV2Signing = true
|
2020-12-23 03:58:30 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
buildTypes {
|
|
|
|
named("debug").configure {
|
|
|
|
applicationIdSuffix = ".debug"
|
|
|
|
}
|
|
|
|
named("release").configure {
|
|
|
|
isDebuggable = false
|
|
|
|
isJniDebuggable = false
|
|
|
|
signingConfig = signingConfigs.getByName("release")
|
|
|
|
}
|
|
|
|
}
|
2021-10-01 00:41:22 +00:00
|
|
|
|
2020-12-23 03:58:30 +00:00
|
|
|
kotlinOptions {
|
2023-08-01 00:35:39 +00:00
|
|
|
jvmTarget = libs.versions.javaVersion.get()
|
2020-12-23 03:58:30 +00:00
|
|
|
}
|
|
|
|
|
2023-04-25 01:05:20 +00:00
|
|
|
compileOptions {
|
2024-01-25 21:17:38 +00:00
|
|
|
isCoreLibraryDesugaringEnabled = true
|
2023-08-01 00:35:39 +00:00
|
|
|
sourceCompatibility(libs.versions.javaVersion.get())
|
|
|
|
targetCompatibility(libs.versions.javaVersion.get())
|
2023-04-25 01:05:20 +00:00
|
|
|
}
|
|
|
|
|
2021-10-13 03:35:05 +00:00
|
|
|
lint {
|
2022-01-27 02:07:55 +00:00
|
|
|
disable += "MissingTranslation"
|
2020-12-23 03:58:30 +00:00
|
|
|
}
|
2021-11-27 18:08:26 +00:00
|
|
|
|
|
|
|
kapt {
|
|
|
|
correctErrorTypes = true
|
|
|
|
}
|
2020-12-23 03:58:30 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
dependencies {
|
|
|
|
implementation(project(":common"))
|
|
|
|
|
2024-01-25 21:17:38 +00:00
|
|
|
coreLibraryDesugaring(libs.tools.desugar.jdk)
|
|
|
|
|
2023-07-29 15:11:08 +00:00
|
|
|
implementation(libs.kotlin.stdlib)
|
|
|
|
implementation(libs.kotlinx.coroutines.android)
|
|
|
|
implementation(libs.kotlinx.coroutines.guava)
|
|
|
|
implementation(libs.kotlinx.coroutines.play.services)
|
2021-10-01 00:41:22 +00:00
|
|
|
|
2023-07-29 15:11:08 +00:00
|
|
|
implementation(libs.material)
|
2020-12-23 03:58:30 +00:00
|
|
|
|
2023-07-29 15:11:08 +00:00
|
|
|
implementation(libs.wear)
|
|
|
|
implementation(libs.core.ktx)
|
2023-10-02 22:24:39 +00:00
|
|
|
implementation(libs.core.splashscreen)
|
2023-07-29 15:11:08 +00:00
|
|
|
implementation(libs.play.services.wearable)
|
|
|
|
implementation(libs.wear.input)
|
|
|
|
implementation(libs.wear.remote.interactions)
|
|
|
|
implementation(libs.wear.phone.interactions)
|
2021-10-01 00:41:22 +00:00
|
|
|
|
2023-07-29 15:11:08 +00:00
|
|
|
implementation(libs.hilt.android)
|
|
|
|
kapt(libs.hilt.android.compiler)
|
2021-11-16 16:06:19 +00:00
|
|
|
|
2023-07-29 15:11:08 +00:00
|
|
|
implementation(libs.jackson.module.kotlin)
|
|
|
|
implementation(libs.okhttp)
|
2021-10-20 21:52:58 +00:00
|
|
|
|
2023-07-29 15:11:08 +00:00
|
|
|
implementation(libs.iconics.core)
|
|
|
|
implementation(libs.appcompat)
|
|
|
|
implementation(libs.community.material.typeface)
|
|
|
|
implementation(libs.iconics.compose)
|
2021-11-03 00:52:28 +00:00
|
|
|
|
2023-07-29 15:11:08 +00:00
|
|
|
implementation(libs.activity.ktx)
|
|
|
|
implementation(libs.activity.compose)
|
|
|
|
implementation(libs.compose.compiler)
|
|
|
|
implementation(platform(libs.compose.bom))
|
|
|
|
implementation(libs.compose.foundation)
|
2023-10-05 13:57:41 +00:00
|
|
|
implementation(libs.compose.material.icons.core)
|
|
|
|
implementation(libs.compose.material.icons.extended)
|
2023-07-29 15:11:08 +00:00
|
|
|
implementation(libs.compose.uiTooling)
|
|
|
|
implementation(libs.wear.compose.foundation)
|
|
|
|
implementation(libs.wear.compose.material)
|
|
|
|
implementation(libs.wear.compose.navigation)
|
2023-10-02 22:23:48 +00:00
|
|
|
implementation(libs.wear.tooling)
|
2021-11-11 21:09:32 +00:00
|
|
|
|
2023-09-20 23:42:20 +00:00
|
|
|
implementation(libs.bundles.horologist)
|
2023-09-19 19:39:25 +00:00
|
|
|
|
2023-07-29 15:11:08 +00:00
|
|
|
implementation(libs.guava)
|
2023-08-26 20:42:20 +00:00
|
|
|
implementation(libs.bundles.wear.tiles)
|
2022-06-21 00:24:37 +00:00
|
|
|
|
2023-07-29 15:11:08 +00:00
|
|
|
implementation(libs.androidx.watchface.complications.data.source.ktx)
|
2022-10-25 21:31:28 +00:00
|
|
|
|
2023-07-29 15:11:08 +00:00
|
|
|
implementation(libs.androidx.health.services.client)
|
2023-01-20 19:02:03 +00:00
|
|
|
|
2023-07-29 15:11:08 +00:00
|
|
|
implementation(platform(libs.firebase.bom))
|
|
|
|
implementation(libs.firebase.messaging)
|
2020-12-23 03:58:30 +00:00
|
|
|
}
|
2023-07-07 15:56:59 +00:00
|
|
|
|
|
|
|
// https://github.com/google/guava/releases/tag/v32.1.0: Reporting dependencies that overlap with Guava
|
|
|
|
configurations.all {
|
|
|
|
resolutionStrategy.capabilitiesResolution.withCapability("com.google.guava:listenablefuture") {
|
|
|
|
select("com.google.guava:guava:0")
|
|
|
|
}
|
|
|
|
}
|