Files
robinsr-android-server/app/build.gradle.kts
2025-03-09 10:23:28 +07:00

79 lines
1.9 KiB
Kotlin

plugins {
alias(libs.plugins.android.application)
alias(libs.plugins.kotlin.android)
}
android {
namespace = "dev.amizing25.robinsr"
compileSdk = 35
defaultConfig {
applicationId = "dev.amizing25.robinsr"
minSdk = 30
targetSdk = 35
versionCode = 1
versionName = "1.0"
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
vectorDrawables.useSupportLibrary = true
}
buildTypes {
release {
isMinifyEnabled = false
proguardFiles(
getDefaultProguardFile("proguard-android-optimize.txt"),
"proguard-rules.pro"
)
}
}
compileOptions {
sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11
}
kotlinOptions {
jvmTarget = "11"
}
buildFeatures {
viewBinding = true
}
ndkVersion = "29.0.13113456 rc1"
buildToolsVersion = "35.0.1"
}
dependencies {
implementation(libs.androidx.core.ktx)
implementation(libs.androidx.appcompat)
implementation(libs.material)
implementation(libs.androidx.constraintlayout)
implementation(libs.androidx.navigation.fragment.ktx)
implementation(libs.androidx.navigation.ui.ktx)
testImplementation(libs.junit)
androidTestImplementation(libs.androidx.junit)
androidTestImplementation(libs.androidx.espresso.core)
}
tasks.register<Exec>("buildRust") {
workingDir(projectDir.resolve("src/main/rust"))
commandLine(
"cargo", "ndk",
"-t", "arm64-v8a",
"-t", "armeabi-v7a",
"-t", "x86",
"-t", "x86_64",
"-o", "../jniLibs",
"build", "--release"
)
}
tasks.register<Delete>("cleanRust") {
delete("src/main/jniLibs")
}
tasks.named("preBuild") {
dependsOn("buildRust")
}
tasks.named("clean") {
dependsOn("cleanRust")
}