import org.jetbrains.kotlin.gradle.tasks.KotlinCompile plugins { alias(libs.plugins.android.library) alias(libs.plugins.kotlin.android) alias(libs.plugins.kotlin.serialization) alias(libs.plugins.kotlin.compose) } android { namespace = "me.rerere.ai" compileSdk = 36 defaultConfig { minSdk = 26 testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" consumerProguardFiles("consumer-rules.pro") // externalNativeBuild { // cmake { // cppFlags += listOf("-DANDROID_SUPPORT_FLEXIBLE_PAGE_SIZES=ON") // abiFilters += listOf("arm64-v8a", "x86_64") // } // } } 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 { compose = true } // externalNativeBuild { // cmake { // path = file("src/main/cpp/CMakeLists.txt") // version = "3.22.1" // } // } tasks.withType().configureEach { compilerOptions.optIn.add("kotlin.uuid.ExperimentalUuidApi") compilerOptions.optIn.add("kotlin.time.ExperimentalTime") } } dependencies { implementation(project(":common")) // Compose implementation(libs.androidx.core.ktx) implementation(platform(libs.androidx.compose.bom)) implementation(libs.androidx.material3) // okhttp api(libs.okhttp) api(libs.okhttp.sse) api(libs.okhttp.logging) // kotlinx api(libs.kotlinx.serialization.json) api(libs.kotlinx.coroutines.core) api(libs.kotlinx.datetime) // tests testImplementation(libs.junit) androidTestImplementation(libs.androidx.junit) androidTestImplementation(libs.androidx.espresso.core) }