@Suppress("DSL_SCOPE_VIOLATION") // False positive plugins { alias(libs.plugins.android.application) alias(libs.plugins.kotlin.android) alias(libs.plugins.kotlin.parcelize) alias(libs.plugins.kotlin.kapt) alias(libs.plugins.androidx.navigation.safeargs) alias(libs.plugins.hilt) alias(libs.plugins.aboutlibraries) alias(libs.plugins.ktlint) } android { namespace = "dev.jdtech.jellyfin" compileSdk = 33 buildToolsVersion = "33.0.0" defaultConfig { applicationId = "dev.jdtech.jellyfin" minSdk = 26 targetSdk = 33 versionCode = 12 versionName = "0.6.1" } buildTypes { getByName("debug") { applicationIdSuffix = ".debug" } getByName("release") { isMinifyEnabled = true isShrinkResources = true proguardFiles( getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro" ) } create("staging") { initWith(getByName("release")) applicationIdSuffix = ".staging" } } splits { abi { isEnable = true reset() include("armeabi-v7a", "arm64-v8a", "x86", "x86_64") isUniversalApk = true } } compileOptions { sourceCompatibility = JavaVersion.VERSION_1_8 targetCompatibility = JavaVersion.VERSION_1_8 } buildFeatures { dataBinding = true viewBinding = true } } ktlint { android.set(true) ignoreFailures.set(false) disabledRules.add("max-line-length") } dependencies { implementation(libs.aboutlibraries.core) implementation(libs.aboutlibraries) implementation(libs.androidx.activity) implementation(libs.androidx.appcompat) implementation(libs.androidx.constraintlayout) implementation(libs.androidx.core) implementation(libs.androidx.leanback) implementation(libs.androidx.lifecycle.runtime) implementation(libs.androidx.lifecycle.viewmodel) implementation(libs.androidx.navigation.fragment) implementation(libs.androidx.navigation.ui) implementation(libs.androidx.paging) implementation(libs.androidx.preference) implementation(libs.androidx.recyclerview) implementation(libs.androidx.recyclerview.selection) implementation(libs.androidx.room.runtime) kapt(libs.androidx.room.compiler) implementation(libs.androidx.room.ktx) implementation(libs.androidx.swiperefreshlayout) implementation(libs.exoplayer.core) implementation(libs.exoplayer.ui) implementation(libs.glide) kapt(libs.glide.compiler) implementation(libs.hilt.android) kapt(libs.hilt.compiler) implementation(libs.jellyfin.core) implementation(libs.material) implementation(libs.timber) // ExoPlayer FFmpeg extension implementation(files("libs/extension-ffmpeg-release.aar")) // MPV implementation(files("libs/libmpv.aar")) }