Juan Ignacio Hurtado Cerron
10/05/2023, 4:06 PMplugins {
id "com.jfrog.artifactory"
id 'com.android.library'
id 'kotlin-android'
id 'kotlin-kapt'
id 'kotlin-parcelize'
id 'maven-publish'
id 'dagger.hilt.android.plugin'
}
apply from: '../publish.gradle'
apply from: 'jacoco.gradle'
android {
compileSdkVersion 31
buildToolsVersion '31.0.0'
defaultConfig {
minSdkVersion 21
targetSdkVersion 31
versionCode 1
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
consumerProguardFiles "consumer-rules.pro"
vectorDrawables {
useSupportLibrary true
}
}
buildTypes {
release {
minifyEnabled false
debuggable false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
debug{
debuggable true
}
}
packagingOptions {
exclude 'META-INF/atomicfu.kotlin_module'
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
testOptions {
animationsDisabled = true
}
kotlinOptions {
jvmTarget = '1.8'
}
buildFeatures {
viewBinding = true
dataBinding = true
}
productFlavors.all {
ext.groupName = null
ext.versionName = null
}
flavorDimensions "country"
// i cant show flavors
}
dependencies {
implementation 'androidx.appcompat:appcompat:1.3.0'
implementation 'androidx.recyclerview:recyclerview:1.2.1'
implementation 'com.google.android.material:material:1.3.0'
implementation 'androidx.lifecycle:lifecycle-extensions:2.2.0'
implementation 'androidx.lifecycle:lifecycle-livedata-ktx:2.3.1'
implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1'
implementation 'androidx.lifecycle:lifecycle-common-java8:2.3.1'
implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.3.1'
implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
implementation 'androidx.navigation:navigation-fragment-ktx:2.3.5'
implementation 'androidx.navigation:navigation-ui-ktx:2.3.5'
implementation "com.google.dagger:hilt-android:$dagger_version"
kapt "com.google.dagger:hilt-compiler:$dagger_version"
kapt "com.google.dagger:hilt-android-compiler:$dagger_version"
implementation 'com.squareup.retrofit2:retrofit:2.6.0'
implementation 'com.squareup.retrofit2:converter-gson:2.6.0'
implementation 'com.squareup.okhttp3:logging-interceptor:3.11.0'
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:$coroutines_version"
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:$coroutines_version"
//lottie
implementation "com.airbnb.android:lottie:3.3.1"
implementation 'com.google.code.gson:gson:2.8.6'
testImplementation 'junit:junit:4.13.2'
testImplementation 'org.robolectric:robolectric:4.6'
testImplementation 'androidx.arch.core:core-testing:2.1.0'
//testImplementation 'android.arch.core:core-testing:1.1.1'
testImplementation "androidx.test:rules:1.3.0"
testImplementation "androidx.test:core-ktx:1.3.0"
testImplementation "androidx.test:core:1.3.0"
testImplementation "org.jetbrains.kotlinx:kotlinx-coroutines-test:$coroutines_version"
testImplementation 'org.mockito:mockito-core:3.0.0'
testImplementation 'org.mockito:mockito-inline:2.13.0'
testImplementation 'com.google.truth:truth:1.1.2'
testImplementation 'androidx.test.ext:junit:1.1.3'
testImplementation 'androidx.test:runner:1.4.0'
testImplementation 'com.jraska.livedata:testing-ktx:1.2.0'
testImplementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:$coroutines_version"
testImplementation "org.jetbrains.kotlinx:kotlinx-coroutines-test:$coroutines_version"
testImplementation "io.mockk:mockk:1.12.1"
testImplementation "io.mockk:mockk-agent-jvm:1.12.1"
testImplementation "com.google.dagger:hilt-android-testing:$dagger_version" // 1
testImplementation "org.robolectric:robolectric:4.6" // 2
kaptTest "com.google.dagger:hilt-android-compiler:$dagger_version" // 3
// For Junit testing of project
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.8.1'
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.8.1'
androidTestImplementation 'androidx.test.ext:junit:1.1.3'
androidTestImplementation 'com.google.truth:truth:1.1.2'
androidTestImplementation 'com.jakewharton.espresso:okhttp3-idling-resource:1.0.0'
androidTestImplementation 'androidx.test:runner:1.4.0'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
androidTestImplementation "org.jetbrains.kotlinx:kotlinx-coroutines-test:$coroutines_version"
androidTestImplementation "androidx.test:rules:1.3.0"
androidTestImplementation "androidx.test:core-ktx:1.3.0"
androidTestImplementation "androidx.test:core:1.3.0"
androidTestImplementation "io.mockk:mockk-android:1.12.4"
androidTestImplementation "io.mockk:mockk-agent-jvm:1.12.4"
kaptAndroidTest "com.google.dagger:dagger-compiler:$dagger_version"
androidTestImplementation 'org.robolectric:annotations:4.7.3'
androidTestImplementation('com.adevinta.android:barista:4.2.0') {
exclude group: 'org.jetbrains.kotlin' // Only if you already use Kotlin in your project
}
implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
}
kapt {
correctErrorTypes true
}
configurations.all {
resolutionStrategy.force 'com.android.support:multidex:1.0.3'
resolutionStrategy.force 'com.android.support:appcompat-v7:28.0.0'
resolutionStrategy.force 'com.android.support:support-annotations:28.0.0'
resolutionStrategy.cacheChangingModulesFor 0, 'seconds'
// all*.exclude group: 'xpp3', module: 'xpp3'
}