0
0
mirror of https://github.com/mediathekview/zapp.git synced 2024-09-20 12:22:15 +02:00
zapp/app/build.gradle
2020-12-26 21:01:15 +01:00

166 lines
4.5 KiB
Groovy

apply plugin: 'com.android.application'
apply plugin: 'com.mikepenz.aboutlibraries.plugin'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-kapt'
apply plugin: 'kotlin-android-extensions'
android {
compileSdkVersion 29
buildToolsVersion '29.0.3'
defaultConfig {
applicationId "de.christinecoenen.code.zapp"
minSdkVersion 21
targetSdkVersion 29
versionCode 47
versionName "3.6.1"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
kotlinOptions {
jvmTarget = JavaVersion.VERSION_1_8.toString()
}
kapt {
arguments {
arg("room.schemaLocation", "$projectDir/schemas")
}
}
packagingOptions {
exclude 'META-INF/library-core_release.kotlin_module'
}
buildFeatures {
viewBinding {
enabled = true
}
}
buildTypes {
debug {
shrinkResources false
}
release {
shrinkResources true
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
testOptions {
unitTests {
includeAndroidResources = true
all {
testLogging {
events 'passed', 'skipped', 'failed', 'standardError'
exceptionFormat 'full'
}
if (project.hasProperty('ci')) {
// tests that should *not* run on ci machines:
exclude '**/JsonChannelListConnectionTest*'
}
}
}
}
}
configurations {
cleanedAnnotations
compile.exclude group: 'org.jetbrains', module: 'annotations'
}
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
// kotlin
implementation 'androidx.core:core-ktx:1.3.2'
// tests
debugImplementation 'androidx.test:core:1.3.0'
debugImplementation 'androidx.fragment:fragment-testing:1.2.5'
// device tests
androidTestImplementation 'androidx.test.ext:junit:1.1.2'
androidTestImplementation 'androidx.test:runner:1.3.0'
androidTestImplementation 'androidx.test:rules:1.3.0'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
androidTestImplementation 'androidx.test.espresso:espresso-contrib:3.3.0'
// unit tests
testImplementation 'androidx.test.ext:junit:1.1.2'
testImplementation 'org.robolectric:robolectric:4.4'
// support
implementation 'androidx.fragment:fragment-ktx:1.2.5'
implementation 'androidx.appcompat:appcompat:1.2.0'
implementation 'com.google.android.material:material:1.2.1'
implementation "androidx.swiperefreshlayout:swiperefreshlayout:1.1.0"
implementation 'androidx.cardview:cardview:1.0.0'
implementation 'androidx.annotation:annotation:1.1.0'
implementation 'androidx.recyclerview:recyclerview:1.1.0'
implementation 'androidx.preference:preference-ktx:1.1.1'
implementation "androidx.paging:paging-runtime-ktx:2.1.2"
implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.2.0'
implementation "androidx.lifecycle:lifecycle-common-java8:2.2.0"
// room database
def room_version = "2.2.6"
implementation "androidx.room:room-runtime:$room_version"
kapt "androidx.room:room-compiler:$room_version"
implementation "androidx.room:room-ktx:$room_version"
implementation "androidx.room:room-rxjava2:${room_version}"
// helper
implementation 'com.google.code.gson:gson:2.8.6'
implementation 'commons-io:commons-io:2.8.0'
// sortable list
implementation 'com.github.woxthebox:draglistview:1.7.2'
// markdown
implementation 'ru.noties:markwon:2.0.2'
// fetch download manager
implementation 'androidx.tonyodev.fetch2:xfetch2:3.1.5'
implementation 'androidx.tonyodev.fetch2okhttp:xfetch2okhttp:3.1.5'
// exo player
implementation 'com.google.android.exoplayer:exoplayer-core:2.12.0'
implementation 'com.google.android.exoplayer:exoplayer-hls:2.12.0'
implementation 'com.google.android.exoplayer:exoplayer-ui:2.12.0'
implementation 'com.google.android.exoplayer:extension-mediasession:2.12.0'
// retrofit rest client
implementation 'com.squareup.retrofit2:retrofit:2.9.0'
implementation 'com.squareup.retrofit2:converter-gson:2.9.0'
implementation 'com.squareup.retrofit2:adapter-rxjava2:2.9.0'
// ACRA crash reporting
implementation 'ch.acra:acra-mail:5.7.0'
implementation 'ch.acra:acra-dialog:5.7.0'
// timber logging
implementation 'com.jakewharton.timber:timber:4.7.1'
// joda time
implementation 'joda-time:joda-time:2.10.6'
// rxjava
implementation 'io.reactivex.rxjava2:rxjava:2.2.19'
implementation 'io.reactivex.rxjava2:rxandroid:2.1.1'
// about libraries view
implementation 'com.mikepenz:aboutlibraries:8.6.2'
implementation 'org.jetbrains:annotations-java5:20.1.0'
}