2015-07-26 17:03:28 +02:00
|
|
|
apply plugin: 'com.android.application'
|
2017-03-02 06:37:51 +01:00
|
|
|
apply plugin: 'kotlin-android'
|
2020-09-18 09:37:19 +02:00
|
|
|
apply plugin: 'kotlin-kapt'
|
2018-09-11 22:21:55 +02:00
|
|
|
apply plugin: 'jacoco'
|
2017-07-29 22:31:20 +02:00
|
|
|
apply from: "../gradle_scripts/code_quality.gradle"
|
2015-07-26 17:03:28 +02:00
|
|
|
|
|
|
|
android {
|
2017-01-14 21:44:28 +01:00
|
|
|
compileSdkVersion versions.compileSdk
|
2015-07-26 17:03:28 +02:00
|
|
|
|
|
|
|
defaultConfig {
|
2015-07-26 18:15:07 +02:00
|
|
|
applicationId "org.moire.ultrasonic"
|
2021-10-14 09:35:57 +02:00
|
|
|
versionCode 98
|
|
|
|
versionName "2.24.0"
|
2018-01-29 17:48:34 +01:00
|
|
|
|
2017-01-14 21:44:28 +01:00
|
|
|
minSdkVersion versions.minSdk
|
|
|
|
targetSdkVersion versions.targetSdk
|
2017-08-02 22:21:44 +02:00
|
|
|
|
2020-11-29 12:35:12 +01:00
|
|
|
resConfigs "cs", "de", "en", "es", "fr", "hu", "it", "nl", "pl", "pt", "pt-rBR", "ru", "zh-rCN", "zh-rTW"
|
2015-07-26 17:03:28 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
buildTypes {
|
|
|
|
release {
|
2018-03-18 18:09:42 +01:00
|
|
|
minifyEnabled true
|
|
|
|
proguardFiles getDefaultProguardFile('proguard-android.txt'),
|
2018-03-21 22:10:37 +01:00
|
|
|
'minify/proguard-main.pro',
|
2018-03-18 18:09:42 +01:00
|
|
|
'minify/proguard-okhttp.pro',
|
|
|
|
'minify/proguard-retrofit.pro',
|
2018-03-21 22:10:37 +01:00
|
|
|
'minify/proguard-jackson.pro',
|
|
|
|
'minify/proguard-kotlin-reflect.pro',
|
|
|
|
'minify/proguard-kotlin.pro'
|
2015-07-26 17:03:28 +02:00
|
|
|
}
|
2017-08-09 21:56:20 +02:00
|
|
|
debug {
|
|
|
|
minifyEnabled false
|
2020-06-05 17:09:33 +02:00
|
|
|
multiDexEnabled true
|
2017-08-09 21:56:20 +02:00
|
|
|
testCoverageEnabled true
|
2018-03-21 22:10:37 +01:00
|
|
|
applicationIdSuffix ".debug"
|
2017-08-09 21:56:20 +02:00
|
|
|
}
|
2015-07-26 17:03:28 +02:00
|
|
|
}
|
2017-03-02 06:37:51 +01:00
|
|
|
sourceSets {
|
2017-08-09 21:56:20 +02:00
|
|
|
main.java.srcDirs += "${projectDir}/src/main/kotlin"
|
|
|
|
test.java.srcDirs += "${projectDir}/src/test/kotlin"
|
2017-03-02 06:37:51 +01:00
|
|
|
}
|
2017-07-24 22:41:22 +02:00
|
|
|
|
|
|
|
packagingOptions {
|
|
|
|
exclude 'META-INF/LICENSE'
|
|
|
|
}
|
2017-07-31 22:44:51 +02:00
|
|
|
|
|
|
|
lintOptions {
|
|
|
|
baselineFile file("lint-baseline.xml")
|
2021-05-19 18:37:54 +02:00
|
|
|
ignore 'MissingTranslation'
|
2021-04-27 19:13:27 +02:00
|
|
|
warning 'ImpliedQuantity'
|
2021-12-21 10:42:54 +01:00
|
|
|
warning 'UnusedQuantity'
|
2021-10-15 16:26:06 +02:00
|
|
|
disable 'IconMissingDensityFolder', "VectorPath"
|
2017-07-31 22:44:51 +02:00
|
|
|
abortOnError true
|
2021-05-19 19:01:29 +02:00
|
|
|
warningsAsErrors true
|
2017-07-31 22:44:51 +02:00
|
|
|
}
|
2021-02-04 20:15:58 +01:00
|
|
|
|
|
|
|
kotlinOptions {
|
|
|
|
jvmTarget = "1.8"
|
|
|
|
}
|
2021-12-22 13:26:58 +01:00
|
|
|
|
|
|
|
buildFeatures {
|
|
|
|
viewBinding true
|
2021-12-22 13:36:13 +01:00
|
|
|
dataBinding true
|
2021-12-22 13:26:58 +01:00
|
|
|
}
|
|
|
|
|
2021-04-18 22:21:34 +02:00
|
|
|
compileOptions {
|
|
|
|
sourceCompatibility JavaVersion.VERSION_1_8
|
|
|
|
targetCompatibility JavaVersion.VERSION_1_8
|
|
|
|
}
|
2021-06-20 16:45:34 +02:00
|
|
|
|
|
|
|
kapt {
|
|
|
|
arguments {
|
|
|
|
arg("room.schemaLocation", "$buildDir/schemas".toString())
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2015-07-26 17:03:28 +02:00
|
|
|
}
|
|
|
|
|
2018-10-06 14:54:28 +02:00
|
|
|
tasks.withType(Test) {
|
|
|
|
useJUnitPlatform()
|
|
|
|
}
|
|
|
|
|
2015-07-26 17:03:28 +02:00
|
|
|
dependencies {
|
2018-10-06 14:13:57 +02:00
|
|
|
implementation project(':core:domain')
|
2018-10-06 14:33:36 +02:00
|
|
|
implementation project(':core:subsonic-api')
|
2017-02-04 23:18:02 +01:00
|
|
|
|
2021-06-07 00:22:29 +02:00
|
|
|
api(other.picasso) {
|
|
|
|
exclude group: "com.android.support"
|
|
|
|
}
|
|
|
|
|
2021-04-17 14:32:04 +02:00
|
|
|
implementation androidSupport.core
|
2017-12-21 10:12:10 +01:00
|
|
|
implementation androidSupport.support
|
|
|
|
implementation androidSupport.design
|
2020-06-05 17:09:33 +02:00
|
|
|
implementation androidSupport.multidex
|
2020-09-18 09:37:19 +02:00
|
|
|
implementation androidSupport.roomRuntime
|
|
|
|
implementation androidSupport.roomKtx
|
|
|
|
implementation androidSupport.viewModelKtx
|
|
|
|
implementation androidSupport.constraintLayout
|
2021-02-04 20:15:58 +01:00
|
|
|
implementation androidSupport.preferences
|
2021-04-22 09:31:27 +02:00
|
|
|
implementation androidSupport.media
|
2021-02-04 20:15:58 +01:00
|
|
|
|
|
|
|
implementation androidSupport.navigationFragment
|
|
|
|
implementation androidSupport.navigationUi
|
|
|
|
implementation androidSupport.navigationFragmentKtx
|
|
|
|
implementation androidSupport.navigationUiKtx
|
|
|
|
implementation androidSupport.navigationFeature
|
2017-03-02 06:37:51 +01:00
|
|
|
|
2017-12-21 10:12:10 +01:00
|
|
|
implementation other.kotlinStdlib
|
2020-09-18 09:37:19 +02:00
|
|
|
implementation other.kotlinxCoroutines
|
2018-06-23 22:18:08 +02:00
|
|
|
implementation other.koinAndroid
|
2020-09-30 18:17:57 +02:00
|
|
|
implementation other.okhttpLogging
|
2020-11-23 13:55:28 +01:00
|
|
|
implementation other.fastScroll
|
2021-10-14 17:17:32 +02:00
|
|
|
implementation other.colorPickerView
|
2021-10-31 15:22:15 +01:00
|
|
|
implementation other.rxJava
|
|
|
|
implementation other.rxAndroid
|
2021-10-16 11:30:51 +02:00
|
|
|
implementation other.multiType
|
2020-09-18 09:37:19 +02:00
|
|
|
|
|
|
|
kapt androidSupport.room
|
2017-03-02 06:37:51 +01:00
|
|
|
|
2017-12-21 10:12:10 +01:00
|
|
|
testImplementation other.kotlinReflect
|
|
|
|
testImplementation testing.junit
|
2018-10-06 14:54:28 +02:00
|
|
|
testRuntimeOnly testing.junitVintage
|
2017-12-21 10:12:10 +01:00
|
|
|
testImplementation testing.kotlinJunit
|
|
|
|
testImplementation testing.kluent
|
2021-06-07 00:22:29 +02:00
|
|
|
testImplementation testing.mockito
|
|
|
|
testImplementation testing.mockitoInline
|
|
|
|
testImplementation testing.mockitoKotlin
|
|
|
|
testImplementation testing.robolectric
|
|
|
|
|
2020-09-30 14:47:59 +02:00
|
|
|
implementation other.timber
|
2015-07-26 17:03:28 +02:00
|
|
|
}
|
2017-08-09 21:56:20 +02:00
|
|
|
|
2018-10-07 20:45:20 +02:00
|
|
|
jacoco {
|
|
|
|
toolVersion(versions.jacoco)
|
|
|
|
}
|
|
|
|
|
2018-06-23 22:49:46 +02:00
|
|
|
// Excluding all java classes and stuff that should not be covered
|
2017-08-09 21:56:20 +02:00
|
|
|
ext {
|
|
|
|
jacocoExclude = [
|
|
|
|
'**/activity/**',
|
|
|
|
'**/audiofx/**',
|
|
|
|
'**/fragment/**',
|
|
|
|
'**/provider/**',
|
|
|
|
'**/receiver/**',
|
|
|
|
'**/service/**',
|
|
|
|
'**/Test/**',
|
|
|
|
'**/util/**',
|
|
|
|
'**/view/**',
|
|
|
|
'**/R$*.class',
|
|
|
|
'**/R.class',
|
2018-06-23 22:49:46 +02:00
|
|
|
'**/BuildConfig.class',
|
2020-08-24 13:59:40 +02:00
|
|
|
'**/di/**',
|
|
|
|
'jdk.internal.*'
|
2017-08-09 21:56:20 +02:00
|
|
|
]
|
|
|
|
}
|
2020-08-24 13:59:40 +02:00
|
|
|
|
|
|
|
jacoco {
|
|
|
|
toolVersion(versions.jacoco)
|
|
|
|
}
|
|
|
|
|
|
|
|
tasks.withType(Test) {
|
|
|
|
jacoco.includeNoLocationClasses = true
|
|
|
|
jacoco.excludes += jacocoExclude
|
|
|
|
}
|