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

130 lines
4.8 KiB
Groovy

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'
}