ananas/app/tv/build.gradle.kts
Jarne Demeulemeester 15c1ac9593
refactor(tv): replace deprecated tv lazy layouts with normal lazy layouts
Use beta version of compose for now (1.7.x)
TV compose foundation library removed
No longer using bom to specify dependencies (doesn't work with the beta versions)
2024-07-15 22:18:09 +02:00

114 lines
3.1 KiB
Text

plugins {
alias(libs.plugins.android.application)
alias(libs.plugins.kotlin.android)
alias(libs.plugins.kotlin.compose.compiler)
alias(libs.plugins.kotlin.parcelize)
alias(libs.plugins.hilt)
alias(libs.plugins.ksp)
alias(libs.plugins.ktlint)
}
android {
namespace = "dev.jdtech.jellyfin"
compileSdk = Versions.compileSdk
buildToolsVersion = Versions.buildTools
defaultConfig {
applicationId = "dev.jdtech.jellyfin"
minSdk = Versions.minSdk
targetSdk = Versions.targetSdk
versionCode = Versions.appCode
versionName = Versions.appName
}
buildTypes {
named("debug") {
applicationIdSuffix = ".debug"
}
named("release") {
isMinifyEnabled = true
isShrinkResources = true
proguardFiles(
getDefaultProguardFile("proguard-android-optimize.txt"),
"proguard-rules.pro",
)
}
register("staging") {
initWith(getByName("release"))
applicationIdSuffix = ".staging"
}
}
flavorDimensions += "variant"
productFlavors {
register("libre") {
dimension = "variant"
isDefault = true
}
}
splits {
abi {
isEnable = true
reset()
include("armeabi-v7a", "arm64-v8a", "x86", "x86_64")
}
}
compileOptions {
isCoreLibraryDesugaringEnabled = true
sourceCompatibility = Versions.java
targetCompatibility = Versions.java
}
buildFeatures {
compose = true
}
packaging {
resources {
excludes += "/META-INF/{AL2.0,LGPL2.1}"
}
}
}
ktlint {
version.set(Versions.ktlint)
android.set(true)
ignoreFailures.set(false)
}
dependencies {
implementation(projects.core)
implementation(projects.data)
implementation(projects.preferences)
implementation(projects.player.core)
implementation(projects.player.video)
implementation(libs.androidx.activity.compose)
implementation(libs.androidx.compose.foundation)
implementation(libs.androidx.compose.runtime)
implementation(libs.androidx.compose.ui.tooling.preview)
implementation(libs.androidx.compose.material3)
implementation(libs.androidx.core)
implementation(libs.androidx.hilt.navigation.compose)
implementation(libs.androidx.lifecycle.viewmodel.compose)
implementation(libs.androidx.media3.exoplayer)
implementation(libs.androidx.media3.ui)
implementation(libs.androidx.media3.session)
implementation(libs.androidx.paging.compose)
implementation(libs.androidx.tv.material)
implementation(libs.coil.compose)
implementation(libs.coil.svg)
implementation(libs.compose.destinations.core)
ksp(libs.compose.destinations.ksp)
implementation(libs.hilt.android)
ksp(libs.hilt.compiler)
implementation(libs.jellyfin.core)
implementation(libs.media3.ffmpeg.decoder)
coreLibraryDesugaring(libs.android.desugar.jdk)
debugImplementation(libs.androidx.compose.ui.tooling)
}