apply plugin: 'com.android.application' apply plugin: 'kotlin-android' apply plugin: 'kotlin-kapt' apply plugin: 'dagger.hilt.android.plugin' android { compileSdkVersion 31 defaultConfig { applicationId "com.madonasyombua.sportsdb" minSdkVersion 24 targetSdkVersion 31 versionCode 1 versionName "1.0" multiDexEnabled true testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner' } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } buildFeatures{ compose true } compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } kotlinOptions { jvmTarget = "1.8" } composeOptions { kotlinCompilerExtensionVersion '1.0.0-beta01' } } def JUnit = "4.13" def testRule="1.2.0" def testRunner='1.2.0' def mockito='3.3.3' def timber = '4.7.1' def room_version = '2.2.5' ext { moshiVersionCodeGen = "1.11.0" moshiVersion = "1.11.0" retrofit = "2.9.0" } dependencies { implementation fileTree(dir: "libs", include: ["*.jar"]) implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_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.activity:activity-compose:1.4.0" 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.lifecycle:lifecycle-viewmodel-compose:2.4.0' implementation "androidx.navigation:navigation-compose:2.4.0-rc01" implementation "androidx.compose.runtime:runtime:1.1.0-rc01" implementation "androidx.compose.runtime:runtime-livedata:1.1.0-rc01" implementation 'androidx.multidex:multidex:2.0.1' implementation 'androidx.hilt:hilt-navigation-compose:1.0.0-rc01' // retrofit implementation "com.squareup.moshi:moshi:${moshiVersion}" implementation 'androidx.lifecycle:lifecycle-livedata-ktx:2.4.0' kapt "com.squareup.moshi:moshi-kotlin-codegen:${moshiVersion}" implementation "com.squareup.retrofit2:retrofit:${retrofit}" implementation "com.squareup.retrofit2:converter-moshi:${retrofit}" implementation "com.squareup.okhttp3:logging-interceptor:4.9.0" // hilt implementation "com.google.dagger:hilt-android:2.39.1" implementation "androidx.hilt:hilt-common:1.0.0" implementation "androidx.hilt:hilt-lifecycle-viewmodel:1.0.0-alpha03" kapt 'androidx.hilt:hilt-compiler:1.0.0' annotationProcessor "androidx.hilt:hilt-compiler:1.0.0" kapt "com.google.dagger:hilt-android-compiler:2.39.1" androidTestImplementation "com.google.dagger:hilt-android-testing:2.39.1" kaptAndroidTest "com.google.dagger:hilt-compiler:2.39.1" implementation "dev.chrisbanes.accompanist:accompanist-coil:0.6.0" //Room Persistent Library implementation "androidx.room:room-runtime:$room_version" implementation 'com.google.firebase:firebase-crashlytics:18.2.6' implementation 'com.google.firebase:firebase-analytics:20.0.2' kapt "androidx.room:room-compiler:$room_version" // Testing testImplementation "junit:junit:$JUnit" androidTestImplementation 'androidx.test.ext:junit:1.1.3' androidTestImplementation 'androidx.arch.core:core-testing:2.1.0' // RxJava implementation 'io.reactivex.rxjava2:rxkotlin:2.4.0' implementation "io.reactivex.rxjava2:rxandroid:2.1.1" implementation 'com.squareup.retrofit2:adapter-rxjava2:2.4.0' //mockito androidTestImplementation "org.mockito:mockito-android:$mockito" testImplementation "org.mockito:mockito-core:$mockito" testImplementation "org.mockito:mockito-inline:$mockito" testImplementation "org.robolectric:robolectric:4.4" testImplementation "com.nhaarman.mockitokotlin2:mockito-kotlin:2.2.0" implementation "com.jakewharton.timber:timber:$timber" androidTestImplementation "androidx.test:rules:$testRule" androidTestImplementation "androidx.test:runner:$testRunner" androidTestImplementation "com.android.support.test.espresso:espresso-core:3.0.2" androidTestImplementation "com.android.support.test.espresso:espresso-intents:3.0.2" androidTestImplementation('androidx.test.espresso:espresso-core:3.1.0', { exclude group: 'com.android.support', module: 'support-annotations' }) implementation 'org.jetbrains:annotations:16.0.1' annotationProcessor 'androidx.room:room-compiler:2.2.5' }