plugins { id 'com.android.application' id 'kotlin-android' id 'kotlin-kapt' } android { compileSdkVersion 33 defaultConfig { applicationId "com.example.androiddevchallenge" minSdkVersion 23 targetSdkVersion 33 versionCode 1 versionName "1.0" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } signingConfigs { // We use a bundled debug keystore, to allow debug builds from CI to be upgradable debug { storeFile rootProject.file('debug.keystore') storePassword 'android' keyAlias 'androiddebugkey' keyPassword 'android' } } buildTypes { debug { signingConfig signingConfigs.debug } release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } } kotlinOptions { jvmTarget = "1.8" } buildFeatures { compose true // Disable unused AGP features buildConfig false aidl false renderScript false resValues false shaders false } composeOptions { kotlinCompilerExtensionVersion compose_version } packagingOptions { // Multiple dependency bring these files in. Exclude them to enable // our test APK to build (has no effect on our AARs) excludes += "/META-INF/AL2.0" excludes += "/META-INF/LGPL2.1" } compileOptions { // Flag to enable support for the new language APIs coreLibraryDesugaringEnabled true // Sets Java compatibility to Java 8 sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } } dependencies { coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:1.1.5' kapt "com.google.dagger:hilt-android-compiler:$hilt_version" implementation "com.google.dagger:hilt-android:$hilt_version" implementation "androidx.hilt:hilt-navigation:1.0.0-alpha03" kapt "com.google.dagger:hilt-compiler:$hilt_version" coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:1.1.5' implementation 'androidx.core:core-ktx:1.9.0' implementation 'androidx.appcompat:appcompat:1.6.0' implementation 'com.google.android.material:material:1.8.0' implementation "androidx.activity:activity-compose:$compose_version" implementation "androidx.compose.ui:ui:$compose_version" implementation "androidx.compose.material:material:$compose_version" implementation "androidx.compose.material:material-icons-extended:$compose_version" implementation "androidx.compose.ui:ui-tooling:$compose_version" implementation "androidx.compose.runtime:runtime-livedata:$compose_version" implementation "androidx.lifecycle:lifecycle-viewmodel-compose:1.0.0-alpha02" implementation 'com.airbnb.android:lottie-compose:1.0.0-alpha07-SNAPSHOT' implementation "androidx.navigation:navigation-compose:1.0.0-alpha08" implementation "dev.chrisbanes.accompanist:accompanist-coil:0.6.1" implementation "dev.chrisbanes.accompanist:accompanist-insets:0.6.1" implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.5.1' implementation 'androidx.navigation:navigation-runtime-ktx:2.5.3' implementation "androidx.compose.ui:ui-viewbinding:$compose_version" implementation "com.spotify.mobius:mobius-core:$mobius_version" implementation "androidx.room:room-runtime:$room_version" implementation "androidx.room:room-ktx:$room_version" implementation "androidx.room:room-rxjava3:$room_version" testImplementation "com.spotify.mobius:mobius-test:$mobius_version" implementation "com.spotify.mobius:mobius-rx3:$mobius_version" // only for RxJava 2 support implementation "com.spotify.mobius:mobius-android:$mobius_version" // only for Android support implementation "com.spotify.mobius:mobius-extras:$mobius_version" // utilities for common patterns testImplementation 'junit:junit:4.13.2' androidTestImplementation 'androidx.test.ext:junit:1.1.2' androidTestImplementation "androidx.compose.ui:ui-test-junit4:$compose_version" }