home-assistant-android/wear/build.gradle.kts

144 lines
4.0 KiB
Plaintext
Raw Normal View History

plugins {
id("com.android.application")
id("kotlin-android")
id("kotlin-kapt")
id("com.github.triplet.play")
kotlin("kapt")
id("dagger.hilt.android.plugin")
id("com.google.gms.google-services")
}
android {
namespace = "io.homeassistant.companion.android"
compileSdk = 33
defaultConfig {
applicationId = "io.homeassistant.companion.android"
minSdk = 26
targetSdk = 32
versionName = project.version.toString()
// We add 1 because the app and wear versions need to have different version codes.
versionCode = (System.getenv("VERSION_CODE")?.toIntOrNull() ?: 1) + 1
javaCompileOptions {
annotationProcessorOptions {
arguments(mapOf("room.incremental" to "true"))
}
}
}
buildFeatures {
viewBinding = true
compose = true
}
composeOptions {
kotlinCompilerExtensionVersion = libs.versions.compose.compiler.get()
}
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") ?: ""
enableV1Signing = true
enableV2Signing = true
}
}
buildTypes {
named("debug").configure {
applicationIdSuffix = ".debug"
}
named("release").configure {
isDebuggable = false
isJniDebuggable = false
signingConfig = signingConfigs.getByName("release")
}
}
kotlinOptions {
jvmTarget = "11"
}
compileOptions {
sourceCompatibility(JavaVersion.VERSION_11)
targetCompatibility(JavaVersion.VERSION_11)
}
lint {
disable += "MissingTranslation"
}
kapt {
correctErrorTypes = true
}
}
play {
serviceAccountCredentials.set(file("playStorePublishServiceCredentialsFile.json"))
2023-01-12 03:44:30 +00:00
track.set("internal")
resolutionStrategy.set(com.github.triplet.gradle.androidpublisher.ResolutionStrategy.IGNORE)
2021-10-14 03:46:49 +00:00
commit.set(false)
}
dependencies {
implementation(project(":common"))
implementation(libs.kotlin.stdlib)
implementation(libs.kotlinx.coroutines.android)
implementation(libs.kotlinx.coroutines.guava)
implementation(libs.kotlinx.coroutines.play.services)
implementation(libs.material)
implementation(libs.wear)
implementation(libs.core.ktx)
implementation(libs.play.services.wearable)
implementation(libs.wear.input)
implementation(libs.wear.remote.interactions)
implementation(libs.wear.phone.interactions)
implementation(libs.hilt.android)
kapt(libs.hilt.android.compiler)
implementation(libs.jackson.module.kotlin)
implementation(libs.okhttp)
2021-10-20 21:52:58 +00:00
implementation(libs.iconics.core)
implementation(libs.appcompat)
implementation(libs.community.material.typeface)
implementation(libs.iconics.compose)
implementation(libs.activity.ktx)
implementation(libs.activity.compose)
implementation(libs.compose.compiler)
implementation(platform(libs.compose.bom))
implementation(libs.compose.foundation)
implementation(libs.compose.uiTooling)
implementation(libs.wear.compose.foundation)
implementation(libs.wear.compose.material)
implementation(libs.wear.compose.navigation)
implementation(libs.guava)
implementation(libs.wear.tiles)
implementation(libs.wear.tiles.material)
implementation(libs.androidx.watchface.complications.data.source.ktx)
implementation(libs.androidx.health.services.client)
implementation(platform(libs.firebase.bom))
implementation(libs.firebase.messaging)
}
// 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")
}
}