Files
neomovies-mobile/android/torrentengine/build.gradle.kts
factory-droid[bot] 2f191dd302 fix(build): resolve Gradle and manifest issues for TorrentEngine
- Remove deprecated android.enableBuildCache from gradle.properties
- Downgrade Kotlin from 2.1.0 to 1.9.24 for Room compatibility
- Add tools namespace to AndroidManifest.xml
- Restore LibTorrent4j to 2.1.0-28 (verified available version)

Known issue: TorrentEngine.kt needs API updates for LibTorrent4j 2.1.x
See compilation errors related to SessionParams, popAlerts, TorrentInfo constructor
2025-10-02 12:27:20 +00:00

77 lines
2.4 KiB
Plaintext

plugins {
id("com.android.library")
id("org.jetbrains.kotlin.android")
kotlin("kapt")
}
android {
namespace = "com.neomovies.torrentengine"
compileSdk = 34
defaultConfig {
minSdk = 21
targetSdk = 34
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
consumerProguardFiles("consumer-rules.pro")
}
buildTypes {
release {
isMinifyEnabled = false
proguardFiles(
getDefaultProguardFile("proguard-android-optimize.txt"),
"proguard-rules.pro"
)
}
}
compileOptions {
sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_17
}
kotlinOptions {
jvmTarget = "17"
}
}
dependencies {
// Core Android dependencies
implementation("androidx.core:core-ktx:1.15.0")
implementation("androidx.appcompat:appcompat:1.7.0")
implementation("com.google.android.material:material:1.12.0")
// Coroutines for async operations
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.9.0")
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.9.0")
// Lifecycle components
implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.8.7")
implementation("androidx.lifecycle:lifecycle-service:2.8.7")
// Room database for torrent state persistence
implementation("androidx.room:room-runtime:2.6.1")
implementation("androidx.room:room-ktx:2.6.1")
kapt("androidx.room:room-compiler:2.6.1")
// WorkManager for background tasks
implementation("androidx.work:work-runtime-ktx:2.10.0")
// Gson for JSON parsing
implementation("com.google.code.gson:gson:2.11.0")
// LibTorrent4j - Java bindings for libtorrent
// Using main package which includes native libraries
implementation("org.libtorrent4j:libtorrent4j:2.1.0-28")
implementation("org.libtorrent4j:libtorrent4j-android-arm64:2.1.0-28")
implementation("org.libtorrent4j:libtorrent4j-android-arm:2.1.0-28")
implementation("org.libtorrent4j:libtorrent4j-android-x86:2.1.0-28")
implementation("org.libtorrent4j:libtorrent4j-android-x86_64:2.1.0-28")
// Testing
testImplementation("junit:junit:4.13.2")
androidTestImplementation("androidx.test.ext:junit:1.2.1")
androidTestImplementation("androidx.test.espresso:espresso-core:3.6.1")
}