https://developer.android.com/jetpack/androidx/releases/compose?hl=ko
https://developer.android.com/develop/ui/compose/bom/bom-mapping?hl=ko
https://developer.android.com/develop/ui/compose/navigation?hl=ko#kts
android {
buildFeatures {
compose = true
}
composeOptions {
kotlinCompilerExtensionVersion = $version
}
kotlinOptions {
jvmTarget = "1.8"
}
}
val composeBom = platform("androidx.compose:compose-bom:2024.06.00")
implementation(composeBom)
androidTestImplementation(composeBom)
implementation("androidx.compose.ui:ui")
implementation("androidx.compose.material:material")
implementation("androidx.activity:activity-compose")
implementation("androidx.navigation:navigation-compose")
implementation("androidx.lifecycle:lifecycle-viewmodel-compose")
https://developer.android.com/develop/ui/compose/tooling/previews?hl=ko
implementation("androidx.compose.ui:ui-tooling")
debugImplementation("androidx.compose.ui:ui-tooling-preview")
dagger : https://developer.android.com/training/dependency-injection/hilt-android?hl=ko
hilt-navigation-compose : https://developer.android.com/jetpack/androidx/releases/hilt?hl=ko
// build.gradle(project)
plugins {
id("com.google.dagger.hilt.android") version "$version" apply false
}
// build.gradle(app module)
plugins {
id("kotlin-kapt")
id("com.google.dagger.hilt.android")
}
dependencies {
implementation("com.google.dagger:hilt-android:$version")
kapt("com.google.dagger:hilt-android-compiler:$version")
implementation("androidx.hilt:hilt-navigation-compose:$version")
}
kapt {
correctErrorTypes = true
}
https://github.com/ParkSangGwon/TedPermission
implementation("io.github.ParkSangGwon:tedpermission-normal:$version")
implementation("io.github.ParkSangGwon:tedpermission-coroutine:$version")
okhttp : https://square.github.io/okhttp/
retrofit : https://github.com/square/retrofit
implementation("com.squareup.okhttp3:okhttp:4.12.0")
implementation("com.squareup.retrofit2:retrofit:$version")
implementation("com.squareup.retrofit2:converter-gson:$version")