plugins { id 'com.android.library' id 'kotlin-android' id 'kotlin-kapt' } group = 'expo.modules.hlsdownloader' version = '0.1.0' def expoModulesCorePlugin = new File(project(":expo-modules-core").projectDir.absolutePath, "ExpoModulesCorePlugin.gradle") def kotlinVersion = findProperty('android.kotlinVersion') ?: '1.9.25' apply from: expoModulesCorePlugin applyKotlinExpoModulesCorePlugin() useCoreDependencies() useExpoPublishing() def useManagedAndroidSdkVersions = false if (useManagedAndroidSdkVersions) { useDefaultAndroidSdkVersions() } else { buildscript { repositories { google() mavenCentral() } dependencies { classpath "com.android.tools.build:gradle:7.1.3" } } project.android { compileSdkVersion safeExtGet("compileSdkVersion", 34) defaultConfig { minSdkVersion safeExtGet("minSdkVersion", 21) targetSdkVersion safeExtGet("targetSdkVersion", 34) } } } dependencies { implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlinVersion" // Media3 dependencies def media3Version = "1.2.0" implementation "androidx.media3:media3-exoplayer:$media3Version" implementation "androidx.media3:media3-datasource:$media3Version" implementation "androidx.media3:media3-common:$media3Version" implementation "androidx.media3:media3-database:$media3Version" implementation "androidx.media3:media3-decoder:$media3Version" implementation "androidx.media3:media3-ui:$media3Version" // Coroutines for background processing implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.7.3" } android { namespace "expo.modules.hlsdownloader" compileSdkVersion 34 defaultConfig { minSdkVersion 21 targetSdkVersion 34 versionCode 1 versionName "0.1.0" } compileOptions { sourceCompatibility JavaVersion.VERSION_17 targetCompatibility JavaVersion.VERSION_17 } kotlinOptions { jvmTarget = "17" } lintOptions { abortOnError false } } tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).configureEach { kotlinOptions { freeCompilerArgs += ["-Xshow-kotlin-compiler-errors"] jvmTarget = "17" } }