diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 1801aa64..7d9effcd 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -20,7 +20,7 @@ plugins { android { namespace = "com.arflix.tv" - compileSdk = 35 + compileSdk = 36 flavorDimensions += "distribution" @@ -54,10 +54,12 @@ android { create("play") { dimension = "distribution" buildConfigField("Boolean", "SELF_UPDATE_ENABLED", "false") + buildConfigField("Boolean", "FEATURE_PLUGINS_ENABLED", "false") } create("sideload") { dimension = "distribution" buildConfigField("Boolean", "SELF_UPDATE_ENABLED", "true") + buildConfigField("Boolean", "FEATURE_PLUGINS_ENABLED", "true") } } @@ -155,6 +157,7 @@ android { "/META-INF/{AL2.0,LGPL2.1}", "/META-INF/LICENSE*", "/META-INF/NOTICE*", + "META-INF/versions/9/OSGI-INF/MANIFEST.MF", ) } jniLibs { @@ -170,6 +173,7 @@ android { kotlin { compilerOptions { jvmTarget.set(org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_17) + freeCompilerArgs.add("-Xskip-metadata-version-check") } } @@ -197,6 +201,8 @@ ksp { configurations.all { resolutionStrategy { force("org.jetbrains.kotlin:kotlin-metadata-jvm:2.3.0") + force("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.7.3") + force("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.7.3") } } @@ -338,6 +344,19 @@ ksp { // NanoHTTPD – lightweight HTTP server for QR-based AI key setup implementation("org.nanohttpd:nanohttpd:2.3.1") + // Plugin system dependencies (Sideload flavor only) + add("sideloadImplementation", files("libs/quickjs-kt-android-1.0.5-nuvio.aar")) + add("sideloadImplementation", "com.fasterxml.jackson.core:jackson-databind:2.17.0") + add("sideloadImplementation", "com.fasterxml.jackson.module:jackson-module-kotlin:2.17.0") + add("sideloadImplementation", "com.github.Blatzar:NiceHttp:0.4.11") + add("sideloadImplementation", "org.conscrypt:conscrypt-android:2.5.3") + add("sideloadImplementation", "com.github.recloudstream.cloudstream:library-android:v4.7.0") { + exclude(group = "org.mozilla", module = "rhino") + } + add("sideloadImplementation", "org.mozilla:rhino:1.8.1") + add("sideloadImplementation", "com.google.re2j:re2j:1.8") + add("sideloadImplementation", "org.webjars.npm:crypto-js:4.2.0") + // Unit Testing testImplementation("junit:junit:4.13.2") testImplementation("org.jetbrains.kotlinx:kotlinx-coroutines-test:1.7.3")