group = "com.example.bes_ota_manager" version = "1.0-SNAPSHOT" buildscript { ext.kotlin_version = "2.1.0" repositories { google() mavenCentral() } dependencies { classpath("com.android.tools.build:gradle:8.9.1") classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version") } } allprojects { repositories { google() mavenCentral() } } apply plugin: "com.android.library" apply plugin: "kotlin-android" android { namespace = "com.example.bes_ota_manager" compileSdk = 36 compileOptions { sourceCompatibility = JavaVersion.VERSION_11 targetCompatibility = JavaVersion.VERSION_11 } kotlinOptions { jvmTarget = JavaVersion.VERSION_11 } sourceSets { // Kotlin bridge lives under src/main/kotlin; the bulk-copied BES OTA SDK // (Java) lives under src/main/java with its original package layout. main.java.srcDirs += "src/main/kotlin" main.java.srcDirs += "src/main/java" test.java.srcDirs += "src/test/kotlin" } defaultConfig { minSdk = 24 } testOptions { unitTests.all { useJUnitPlatform() testLogging { events "passed", "skipped", "failed", "standardOut", "standardError" outputs.upToDateWhen {false} showStandardStreams = true } } } } dependencies { // BES OTA SDK sources reference these annotations/support libs. implementation("androidx.annotation:annotation:1.7.1") implementation("androidx.core:core:1.13.1") // Declared per BES SDK packaging convention. The OTA path copied here does not // currently reference these symbols, but they are kept so the broader SDK // remains drop-in compatible if more packages are added later. implementation("com.google.code.gson:gson:2.8.6") implementation("io.reactivex.rxjava2:rxjava:2.0.5") testImplementation("org.jetbrains.kotlin:kotlin-test") testImplementation("org.mockito:mockito-core:5.0.0") }