2016-09-12 12:20:24 +02:00
|
|
|
apply plugin: 'com.android.application'
|
2020-04-12 16:42:09 +02:00
|
|
|
apply plugin: 'com.mikepenz.aboutlibraries.plugin'
|
2020-05-09 19:22:08 +02:00
|
|
|
apply plugin: 'kotlin-android'
|
2020-06-18 21:26:13 +02:00
|
|
|
apply plugin: 'kotlin-kapt'
|
2021-01-14 17:39:07 +01:00
|
|
|
apply plugin: 'koin'
|
2020-05-09 19:22:08 +02:00
|
|
|
|
2016-09-12 12:20:24 +02:00
|
|
|
|
|
|
|
android {
|
2021-06-19 18:22:29 +02:00
|
|
|
compileSdkVersion 30
|
|
|
|
buildToolsVersion '30.0.3'
|
2016-09-12 12:20:24 +02:00
|
|
|
|
|
|
|
defaultConfig {
|
|
|
|
applicationId "de.christinecoenen.code.zapp"
|
2021-08-07 10:28:41 +02:00
|
|
|
minSdkVersion 23
|
2021-06-19 18:22:29 +02:00
|
|
|
targetSdkVersion 30
|
2021-09-30 13:37:41 +02:00
|
|
|
versionCode 49
|
|
|
|
versionName "4.0.1"
|
2018-09-29 20:34:52 +02:00
|
|
|
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
2016-09-12 12:20:24 +02:00
|
|
|
}
|
2020-07-05 21:03:01 +02:00
|
|
|
|
2017-11-02 20:35:13 +01:00
|
|
|
compileOptions {
|
|
|
|
sourceCompatibility JavaVersion.VERSION_1_8
|
|
|
|
targetCompatibility JavaVersion.VERSION_1_8
|
|
|
|
}
|
2020-07-05 21:03:01 +02:00
|
|
|
|
2020-12-21 21:12:56 +01:00
|
|
|
kotlinOptions {
|
|
|
|
jvmTarget = JavaVersion.VERSION_1_8.toString()
|
|
|
|
}
|
|
|
|
|
2020-07-05 21:03:01 +02:00
|
|
|
kapt {
|
|
|
|
arguments {
|
|
|
|
arg("room.schemaLocation", "$projectDir/schemas")
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2020-07-05 13:02:48 +02:00
|
|
|
buildFeatures {
|
|
|
|
viewBinding {
|
|
|
|
enabled = true
|
|
|
|
}
|
2020-05-01 11:24:53 +02:00
|
|
|
}
|
2017-11-02 20:35:13 +01:00
|
|
|
|
2016-09-12 12:20:24 +02:00
|
|
|
buildTypes {
|
2017-03-26 13:51:21 +02:00
|
|
|
debug {
|
2017-10-13 16:13:47 +02:00
|
|
|
shrinkResources false
|
2017-03-26 13:51:21 +02:00
|
|
|
}
|
2016-09-12 12:20:24 +02:00
|
|
|
release {
|
2017-10-13 16:13:47 +02:00
|
|
|
shrinkResources true
|
2017-03-26 13:51:21 +02:00
|
|
|
minifyEnabled true
|
2016-09-12 12:20:24 +02:00
|
|
|
}
|
|
|
|
}
|
2019-05-23 14:34:08 +02:00
|
|
|
|
|
|
|
testOptions {
|
|
|
|
unitTests {
|
|
|
|
includeAndroidResources = true
|
2019-06-19 10:48:32 +02:00
|
|
|
all {
|
|
|
|
testLogging {
|
|
|
|
events 'passed', 'skipped', 'failed', 'standardError'
|
|
|
|
exceptionFormat 'full'
|
|
|
|
}
|
2019-06-19 21:26:33 +02:00
|
|
|
|
|
|
|
if (project.hasProperty('ci')) {
|
|
|
|
// tests that should *not* run on ci machines:
|
|
|
|
exclude '**/JsonChannelListConnectionTest*'
|
|
|
|
}
|
2019-06-19 10:48:32 +02:00
|
|
|
}
|
2019-05-23 14:34:08 +02:00
|
|
|
}
|
|
|
|
}
|
2016-09-12 12:20:24 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
dependencies {
|
2018-04-06 14:13:19 +02:00
|
|
|
implementation fileTree(include: ['*.jar'], dir: 'libs')
|
2016-10-05 16:55:01 +02:00
|
|
|
|
2020-05-09 19:22:08 +02:00
|
|
|
// kotlin
|
2021-07-06 17:49:25 +02:00
|
|
|
implementation 'androidx.core:core-ktx:1.6.0'
|
2020-05-09 19:22:08 +02:00
|
|
|
|
2020-12-21 21:12:56 +01:00
|
|
|
// tests
|
2021-07-06 17:49:25 +02:00
|
|
|
debugImplementation 'androidx.test:core:1.4.0'
|
2021-08-06 20:53:54 +02:00
|
|
|
debugImplementation 'androidx.fragment:fragment-testing:1.3.6'
|
2019-06-23 14:05:38 +02:00
|
|
|
|
2019-05-23 14:55:58 +02:00
|
|
|
// device tests
|
2021-07-06 17:49:25 +02:00
|
|
|
androidTestImplementation 'androidx.test.ext:junit-ktx:1.1.3'
|
|
|
|
androidTestImplementation 'androidx.test:runner:1.4.0'
|
|
|
|
androidTestImplementation 'androidx.test:rules:1.4.0'
|
|
|
|
androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
|
|
|
|
androidTestImplementation 'androidx.test.espresso:espresso-contrib:3.4.0'
|
2017-09-02 10:39:23 +02:00
|
|
|
|
2019-05-23 14:55:58 +02:00
|
|
|
// unit tests
|
2021-07-06 17:49:25 +02:00
|
|
|
testImplementation 'androidx.test.ext:junit-ktx:1.1.3'
|
|
|
|
testImplementation 'androidx.test:core-ktx:1.4.0'
|
2021-08-06 20:53:54 +02:00
|
|
|
testImplementation 'org.robolectric:robolectric:4.6.1'
|
2021-10-09 19:04:38 +02:00
|
|
|
testImplementation 'org.mockito.kotlin:mockito-kotlin:3.2.0'
|
|
|
|
testImplementation 'org.jetbrains.kotlinx:kotlinx-coroutines-test:1.5.1'
|
2019-05-29 21:12:16 +02:00
|
|
|
|
2016-10-11 21:21:17 +02:00
|
|
|
// support
|
2021-08-06 20:53:54 +02:00
|
|
|
implementation 'androidx.fragment:fragment-ktx:1.3.6'
|
|
|
|
implementation 'androidx.appcompat:appcompat:1.3.1'
|
2021-07-06 17:49:25 +02:00
|
|
|
implementation 'com.google.android.material:material:1.4.0'
|
2020-12-26 21:01:15 +01:00
|
|
|
implementation "androidx.swiperefreshlayout:swiperefreshlayout:1.1.0"
|
2018-09-29 20:34:52 +02:00
|
|
|
implementation 'androidx.cardview:cardview:1.0.0'
|
2021-06-19 11:18:47 +02:00
|
|
|
implementation 'androidx.annotation:annotation:1.2.0'
|
|
|
|
implementation 'androidx.recyclerview:recyclerview:1.2.1'
|
2020-12-26 21:01:15 +01:00
|
|
|
implementation 'androidx.preference:preference-ktx:1.1.1'
|
2021-08-06 20:53:54 +02:00
|
|
|
implementation "androidx.paging:paging-runtime-ktx:3.0.1"
|
2021-08-18 13:47:31 +02:00
|
|
|
|
|
|
|
def lifecycle_version = "2.3.1"
|
|
|
|
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycle_version"
|
|
|
|
implementation "androidx.lifecycle:lifecycle-service:$lifecycle_version"
|
2016-10-11 21:21:17 +02:00
|
|
|
|
2020-06-18 21:26:13 +02:00
|
|
|
// room database
|
2021-06-19 11:18:47 +02:00
|
|
|
def room_version = "2.3.0"
|
2020-07-05 13:02:48 +02:00
|
|
|
implementation "androidx.room:room-runtime:$room_version"
|
2020-06-18 21:26:13 +02:00
|
|
|
kapt "androidx.room:room-compiler:$room_version"
|
|
|
|
implementation "androidx.room:room-ktx:$room_version"
|
|
|
|
|
2016-10-11 21:21:17 +02:00
|
|
|
// helper
|
2021-06-19 17:44:06 +02:00
|
|
|
implementation 'com.google.code.gson:gson:2.8.7'
|
2021-08-04 11:41:46 +02:00
|
|
|
|
|
|
|
// We need version 2.6 here - newest version still running with Java 7.
|
|
|
|
// Newer versions will crash on older devices.
|
2021-08-06 20:53:54 +02:00
|
|
|
//noinspection NewerVersionAvailable,GradleDependency
|
2021-08-04 11:41:46 +02:00
|
|
|
implementation 'commons-io:commons-io:2.6'
|
2016-10-11 21:21:17 +02:00
|
|
|
|
|
|
|
// sortable list
|
2020-08-11 09:43:14 +02:00
|
|
|
implementation 'com.github.woxthebox:draglistview:1.7.2'
|
2016-10-11 21:21:17 +02:00
|
|
|
|
2016-11-02 11:34:33 +01:00
|
|
|
// markdown
|
2019-05-16 20:35:38 +02:00
|
|
|
implementation 'ru.noties:markwon:2.0.2'
|
2016-11-02 11:34:33 +01:00
|
|
|
|
2020-05-09 19:22:08 +02:00
|
|
|
// fetch download manager
|
2020-09-01 20:01:12 +02:00
|
|
|
implementation 'androidx.tonyodev.fetch2:xfetch2:3.1.5'
|
2020-09-03 14:46:36 +02:00
|
|
|
implementation 'androidx.tonyodev.fetch2okhttp:xfetch2okhttp:3.1.5'
|
2020-05-09 19:22:08 +02:00
|
|
|
|
2017-05-11 22:51:51 +02:00
|
|
|
// exo player
|
2021-08-15 15:20:27 +02:00
|
|
|
def exoplayer_version = "2.15.0"
|
2021-06-19 11:18:47 +02:00
|
|
|
implementation "com.google.android.exoplayer:exoplayer-core:$exoplayer_version"
|
|
|
|
implementation "com.google.android.exoplayer:exoplayer-hls:$exoplayer_version"
|
|
|
|
implementation "com.google.android.exoplayer:exoplayer-ui:$exoplayer_version"
|
|
|
|
implementation "com.google.android.exoplayer:extension-mediasession:$exoplayer_version"
|
2017-05-11 22:51:51 +02:00
|
|
|
|
2017-07-21 08:30:06 +02:00
|
|
|
// retrofit rest client
|
2020-08-11 09:43:14 +02:00
|
|
|
implementation 'com.squareup.retrofit2:retrofit:2.9.0'
|
|
|
|
implementation 'com.squareup.retrofit2:converter-gson:2.9.0'
|
2017-07-29 15:48:59 +02:00
|
|
|
|
|
|
|
// ACRA crash reporting
|
2021-08-06 20:53:54 +02:00
|
|
|
def acra_version = "5.8.4"
|
2021-06-19 17:44:06 +02:00
|
|
|
implementation "ch.acra:acra-mail:$acra_version"
|
|
|
|
implementation "ch.acra:acra-dialog:$acra_version"
|
2017-07-30 14:46:07 +02:00
|
|
|
|
|
|
|
// timber logging
|
2018-09-29 19:05:26 +02:00
|
|
|
implementation 'com.jakewharton.timber:timber:4.7.1'
|
2017-08-03 17:41:26 +02:00
|
|
|
|
|
|
|
// joda time
|
2021-06-19 17:44:06 +02:00
|
|
|
implementation 'joda-time:joda-time:2.10.10'
|
2017-11-04 17:57:27 +01:00
|
|
|
|
|
|
|
// about libraries view
|
2021-01-14 17:39:07 +01:00
|
|
|
implementation "com.mikepenz:aboutlibraries:$about_libraries_version"
|
|
|
|
|
|
|
|
// koin dependency injection
|
2021-06-20 09:19:17 +02:00
|
|
|
implementation "io.insert-koin:koin-android:$koin_version"
|
2021-06-19 17:44:06 +02:00
|
|
|
androidTestImplementation "io.insert-koin:koin-test:$koin_version"
|
|
|
|
testImplementation "io.insert-koin:koin-test:$koin_version"
|
2016-09-12 12:20:24 +02:00
|
|
|
}
|