Files
coco 723ce1af5c a
2026-07-03 15:12:48 +08:00

118 lines
4.3 KiB
Groovy

plugins {
id 'com.android.application'
id 'kotlin-android'
id 'com.google.android.libraries.mapsplatform.secrets-gradle-plugin'
}
android {
compileSdkVersion 32
buildToolsVersion "30.0.3"
defaultConfig {
applicationId "com.simform.sscomposecookbook"
minSdkVersion 21
targetSdkVersion 32
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
vectorDrawables {
useSupportLibrary true
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
buildTypes.each {
it.buildConfigField 'String', 'BASE_URL_MOVIEDB', BASE_URL_MOVIEDB
it.buildConfigField 'String', 'IMAGE_URL_MOVIEDB', IMAGE_URL_MOVIEDB
it.buildConfigField 'String', 'MOVIEDB_API_KEY', MOVIEDB_API_KEY
it.buildConfigField 'String', 'BASE_URL_MAPS', BASE_URL_MAPS
it.buildConfigField 'String', 'MAP_PHOTOS_END_POINT', "${BASE_URL_MAPS}+${MAP_PHOTOS_END_POINT}"
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
kotlinOptions {
jvmTarget = '1.8'
useIR = true
}
buildFeatures {
compose true
}
composeOptions {
kotlinCompilerExtensionVersion compose_version
kotlinCompilerVersion kotlin_gradle_version
}
packagingOptions {
resources {
excludes += '/META-INF/{AL2.0,LGPL2.1}'
}
}
}
dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_stdlib_version"
implementation 'androidx.core:core-ktx:1.7.0'
implementation 'androidx.appcompat:appcompat:1.4.0'
implementation 'com.google.android.material:material:1.4.0'
implementation "androidx.compose.ui:ui:$compose_version"
implementation "androidx.compose.material:material:$compose_version"
implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.4.0'
implementation 'androidx.navigation:navigation-fragment-ktx:2.3.5'
implementation 'androidx.navigation:navigation-ui-ktx:2.3.5'
implementation "androidx.compose.ui:ui-tooling:$compose_version"
implementation "androidx.compose.ui:ui-tooling-preview:$compose_version"
implementation "androidx.compose.foundation:foundation:$compose_version"
implementation "androidx.activity:activity-compose:$activity_version"
implementation "androidx.constraintlayout:constraintlayout-compose:$constraint_compose_version"
// Compose Navigation
implementation "androidx.navigation:navigation-compose:$navigation_compose_version"
// Material Icons
implementation "androidx.compose.material:material-icons-extended:$compose_version"
//Retrofit
implementation 'com.squareup.retrofit2:retrofit:2.9.0'
implementation 'com.squareup.retrofit2:converter-gson:2.9.0'
//okHttp
implementation 'com.squareup.okhttp3:okhttp:4.9.1'
implementation 'com.squareup.okhttp3:logging-interceptor:4.9.1'
//Coil
implementation "io.coil-kt:coil-compose:$coil_version"
//Paging 3.0
implementation 'androidx.paging:paging-compose:1.0.0-alpha14'
//Animation
implementation "androidx.compose.animation:animation:$compose_version"
implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
androidTestImplementation "androidx.compose.ui:ui-test-junit4:$compose_version"
//Google Maps
implementation "com.google.maps.android:maps-compose:2.5.2"
implementation 'com.google.maps.android:maps-compose-widgets:2.5.2'
implementation "com.google.android.gms:play-services-maps:18.0.2"
implementation 'com.google.maps.android:maps-ktx:3.3.0'
implementation 'com.google.maps.android:maps-utils-ktx:3.4.0'
implementation "com.google.accompanist:accompanist-swiperefresh:0.19.0"
implementation "com.google.accompanist:accompanist-flowlayout:0.24.10-beta"
//viewpager
implementation "com.google.accompanist:accompanist-pager:0.23.1"
//pager indicator
implementation 'com.google.accompanist:accompanist-pager-indicators:0.23.1'
}
secrets {
defaultPropertiesFileName 'local.defaults.properties'
}