import java.util.regex.Pattern.compile plugins { alias(libs.plugins.android.application) alias(libs.plugins.jetbrains.kotlin.android) alias(libs.plugins.kotlin.kapt) } android { namespace = "net.newpipe.newplayer" compileSdk = 34 buildFeatures { compose = true } composeOptions { kotlinCompilerExtensionVersion = "1.5.1" } defaultConfig { applicationId = "net.newpipe.newplayer" minSdk = 21 targetSdk = 34 versionCode = 1 versionName = "1.0" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" } buildTypes { release { isMinifyEnabled = false proguardFiles( getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro" ) } } compileOptions { sourceCompatibility = JavaVersion.VERSION_1_8 targetCompatibility = JavaVersion.VERSION_1_8 } kotlinOptions { jvmTarget = "1.8" } } dependencies { implementation(libs.androidx.core.ktx) implementation(libs.androidx.appcompat) implementation(libs.material) implementation(libs.androidx.activity) implementation(libs.androidx.constraintlayout) implementation(libs.androidx.activity.compose) implementation(libs.androidx.material3) implementation(libs.androidx.ui.tooling) implementation(libs.androidx.material.icons.extended.android) implementation(libs.androidx.media3.exoplayer) implementation(libs.androidx.media3.ui) implementation(libs.hilt.android) implementation(libs.androidx.lifecycle.viewmodel.compose) kapt(libs.hilt.android.compiler) kapt(libs.androidx.hilt.compiler) implementation(libs.androidx.hilt.navigation.compose) testImplementation(libs.junit) androidTestImplementation(libs.androidx.junit) androidTestImplementation(libs.androidx.espresso.core) }