Files
BisaUMKM/app/build.gradle.kts
2025-04-23 17:12:45 +07:00

123 lines
3.8 KiB
Plaintext

import java.util.Properties
plugins {
alias(libs.plugins.android.application)
alias(libs.plugins.jetbrains.kotlin.android)
alias(libs.plugins.ksp) // Use KSP instead of kapt
id("androidx.navigation.safeargs")
id("kotlin-parcelize")
alias(libs.plugins.dagger.hilt) // Use alias from catalog
}
val localProperties = Properties().apply {
val localPropertiesFile = rootProject.file("local.properties")
if (localPropertiesFile.exists()) {
load(localPropertiesFile.inputStream())
}
}
android {
namespace = "com.alya.ecommerce_serang"
compileSdk = 35
defaultConfig {
applicationId = "com.alya.ecommerce_serang"
minSdk = 21
targetSdk = 34
versionCode = 1
versionName = "1.0"
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
buildConfigField(
"String",
"BASE_URL",
"\"${localProperties["BASE_URL"] ?: "http://default-url.com/"}\""
)
}
buildTypes {
release {
isMinifyEnabled = false
proguardFiles(
getDefaultProguardFile("proguard-android-optimize.txt"),
"proguard-rules.pro"
)
buildConfigField("String",
"BASE_URL",
"\"${localProperties["BASE_URL"] ?: "http://default-url.com/"}\"")
}
debug {
buildConfigField("String",
"BASE_URL",
"\"${localProperties["BASE_URL"] ?: "http://default-url.com/"}\"")
}
}
compileOptions {
sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11
}
kotlinOptions {
jvmTarget = "11"
}
buildFeatures {
buildConfig = true
viewBinding = true
}
}
dependencies {
implementation(libs.androidx.core.ktx)
implementation(libs.androidx.appcompat)
implementation(libs.material)
implementation(libs.androidx.activity)
implementation(libs.androidx.constraintlayout)
implementation(libs.androidx.legacy.support.v4)
implementation(libs.androidx.lifecycle.livedata.ktx)
implementation(libs.androidx.lifecycle.viewmodel.ktx)
implementation(libs.androidx.fragment.ktx)
implementation(libs.androidx.navigation.fragment.ktx)
implementation(libs.androidx.navigation.ui.ktx)
implementation(libs.androidx.recyclerview)
testImplementation(libs.junit)
androidTestImplementation(libs.androidx.junit)
androidTestImplementation(libs.androidx.espresso.core)
//retrofit
implementation("com.squareup.retrofit2:retrofit:2.9.0")
implementation("com.squareup.retrofit2:converter-gson:2.9.0")
implementation("com.squareup.okhttp3:logging-interceptor:4.11.0")
implementation("com.github.bumptech.glide:glide:4.16.0")
implementation("androidx.paging:paging-runtime:3.2.1")
implementation("androidx.swiperefreshlayout:swiperefreshlayout:1.1.0")
implementation("de.hdodenhof:circleimageview:3.1.0")
// implementation(libs.hilt.android)
implementation(libs.hilt.android)
ksp(libs.hilt.compiler)
// Androidx Hilt
implementation(libs.androidx.hilt.navigation.fragment)
implementation(libs.androidx.hilt.work)
ksp(libs.androidx.hilt.compiler)
implementation("androidx.work:work-runtime-ktx:2.8.1")
implementation("androidx.work:work-runtime:2.8.1")
implementation("io.ktor:ktor-client-android:3.0.1")
implementation("io.ktor:ktor-client-core:3.0.1")
implementation("io.ktor:ktor-client-websockets:3.0.1")
implementation("io.ktor:ktor-client-logging:3.0.1")
implementation("io.ktor:ktor-client-okhttp:3.0.1")
implementation("io.ktor:ktor-client-content-negotiation:3.0.1")
implementation("io.ktor:ktor-serialization-kotlinx-json:3.0.1")
implementation("io.socket:socket.io-client:2.1.0") // or latest version
}