import java.util.Properties import java.io.FileInputStream plugins { id("com.android.application") id("org.jetbrains.kotlin.android") id("rust") } val keyPropertiesFile = rootProject.file("key.properties") val keyProperties = Properties() keyProperties.load(FileInputStream(keyPropertiesFile)) android { compileSdk = 33 namespace = "org.nextgraph.ng_app" defaultConfig { manifestPlaceholders["usesCleartextTraffic"] = "false" applicationId = "org.nextgraph.ng_app" minSdk = 24 targetSdk = 33 versionCode = 1 versionName = "1.0" } signingConfigs { create("release") { keyAlias = keyProperties["keyAlias"] as String keyPassword = keyProperties["keyPassword"] as String storeFile = file(keyProperties["storeFile"] as String) storePassword = keyProperties["storePassword"] as String } } buildTypes { getByName("debug") { manifestPlaceholders["usesCleartextTraffic"] = "true" isDebuggable = true isJniDebuggable = true isMinifyEnabled = false packaging { jniLibs.keepDebugSymbols.add("*/arm64-v8a/*.so") jniLibs.keepDebugSymbols.add("*/armeabi-v7a/*.so") jniLibs.keepDebugSymbols.add("*/x86/*.so") jniLibs.keepDebugSymbols.add("*/x86_64/*.so") } } getByName("release") { isMinifyEnabled = true signingConfig = signingConfigs.getByName("release") proguardFiles( *fileTree(".") { include("**/*.pro") } .plus(getDefaultProguardFile("proguard-android-optimize.txt")) .toList().toTypedArray() ) } } kotlinOptions { jvmTarget = "1.8" } } rust { rootDirRel = "../../../" } dependencies { implementation("androidx.webkit:webkit:1.6.1") implementation("androidx.appcompat:appcompat:1.6.1") implementation("com.google.android.material:material:1.8.0") testImplementation("junit:junit:4.13.2") androidTestImplementation("androidx.test.ext:junit:1.1.4") androidTestImplementation("androidx.test.espresso:espresso-core:3.5.0") } apply(from = "tauri.build.gradle.kts")