BankingClient/ui/BankingAndroidApp/build.gradle

182 lines
6.7 KiB
Groovy

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
apply plugin: 'kotlin-kapt'
repositories {
// for security issues fixed version of iText 2 from JasperReports
maven {
url "http://jaspersoft.jfrog.io/jaspersoft/third-party-ce-artifacts"
}
}
android {
compileSdkVersion androidCompileSdkVersion
buildToolsVersion androidBuildToolsVersion
defaultConfig {
applicationId "net.codinux.banking.android"
minSdkVersion androidMinSdkVersion
targetSdkVersion androidTargetSdkVersion
versionName version
versionCode appVersionCode
multiDexEnabled true
// enable using vector drawables on pre Lollipop devices
vectorDrawables.useSupportLibrary = true
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
kotlinOptions {
jvmTarget = '1.8'
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
signingConfigs {
debug {
// so that all machines have the same signing key, no matter if app is installed from developer's machine or from Jenkins
storeFile file('debug-keystore.jks')
storePassword 'find_my_bugs_before_releasing_me'
keyAlias 'DebugKey'
keyPassword 'find_my_bugs_before_releasing_me'
}
}
packagingOptions {
pickFirst 'META-INF/kotlinx-coroutines-io.kotlin_module'
pickFirst 'META-INF/kotlinx-io.kotlin_module'
pickFirst 'META-INF/kotlinx-serialization-runtime.kotlin_module'
pickFirst 'META-INF/ktor-utils.kotlin_module'
pickFirst 'META-INF/ktor-client-core.kotlin_module'
pickFirst 'META-INF/ktor-http.kotlin_module'
pickFirst 'META-INF/ktor-io.kotlin_module'
pickFirst 'META-INF/ktor-http-cio.kotlin_module'
pickFirst 'META-INF/atomicfu.kotlin_module'
pickFirst 'META-INF/common.kotlin_module'
pickFirst 'META-INF/fints4k.kotlin_module'
pickFirst 'META-INF/BankFinder.kotlin_module'
pickFirst 'META-INF/BankFinder.kotlin_module'
pickFirst 'META-INF/DEPENDENCIES'
pickFirst 'META-INF/NOTICE'
pickFirst 'META-INF/LICENSE'
pickFirst 'META-INF/LICENSE.txt'
pickFirst 'META-INF/NOTICE.txt'
pickFirst 'BankList.json'
exclude 'DetailedBankList.json'
}
lintOptions {
abortOnError false
}
}
dependencies {
implementation project(":fints4k")
implementation project(':BankingUiCommon')
implementation project(':fints4kBankingClient')
implementation project(':LuceneBankFinder')
implementation project(':BankingPersistenceJson')
implementation project(':LuceneBankingPersistence')
implementation project(':RoomBankingPersistence')
implementation project(':CsvAccountTransactionsImporterAndExporter')
implementation "net.dankito.text.extraction:itext2-text-extractor:$textExtractorVersion"
implementation "net.dankito.text.extraction:pdfbox-android-text-extractor:$textExtractorVersion" + "a" // TODO: version 0.6.0a become only necessary due to a misconfigured Maven upload task. Remove 'a' again on next version
implementation "com.github.clans:fab:$clansFloatingActionButtonVersion"
implementation 'info.hoang8f:android-segmented:1.0.6'
implementation "com.otaliastudios:autocomplete:$autocompleteVersion"
implementation("com.journeyapps:zxing-android-embedded:4.1.0") { transitive = false } // transitive to use older ZXing version as ZXing 3.4.0 requires Android > 23
implementation "com.google.zxing:core:$zxingVersion"
implementation "com.yakivmospan:scytale:$scytaleVersion"
implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlinVersion"
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:$kotlinCoroutinesVersion"
implementation "net.dankito.filechooserdialog:filechooserdialog-android:$fileChooserDialogVersion", {
exclude group: 'org.jetbrains.kotlin', module: 'kotlin-stdlib'
exclude group: 'com.android.support', module: 'appcompat-v7'
exclude group: 'com.android.support', module: 'design'
exclude group: 'com.android.support.constraint', module: 'constraint-layout'
exclude module: 'recyclerview-v7'
}
implementation "net.dankito.utils:android-utils:$androidUtilsVersion", {
exclude group: 'org.jetbrains.kotlin', module: 'kotlin-stdlib-jdk7'
exclude group: 'com.android.support', module: 'appcompat-v7'
exclude group: 'com.android.support', module: 'design'
}
// Android 4 support has been dropped with version 3.13.0
implementation('com.squareup.okhttp3:okhttp') {
version { strictly '3.12.12' }
}
implementation "org.slf4j:slf4j-android:$slf4jVersion"
implementation "androidx.multidex:multidex:$multiDexVersion"
implementation "androidx.appcompat:appcompat:$appCompatVersion"
implementation "androidx.recyclerview:recyclerview:$appCompatVersion"
implementation "androidx.annotation:annotation:$appCompatVersion"
implementation "com.google.android.material:material:$materialComponentsVersion"
implementation "androidx.constraintlayout:constraintlayout:$constraintLayoutVersion"
implementation "androidx.biometric:biometric:$androidXBiometricVersion"
implementation "at.favre.lib:bcrypt:$bcryptVersion"
implementation "com.mikepenz:fastadapter:$fastAdapterVersion"
implementation "com.mikepenz:fastadapter-extensions-binding:$fastAdapterVersion"
implementation "com.mikepenz:fastadapter-extensions-drag:$fastAdapterVersion"
implementation "com.mikepenz:fastadapter-extensions-swipe:$fastAdapterVersion"
implementation "com.mikepenz:fastadapter-extensions-utils:$fastAdapterVersion"
// for MaterialDrawer
implementation "com.mikepenz:materialdrawer:$materialDrawerVersion"
implementation "com.mikepenz:materialdrawer-nav:$materialDrawerVersion"
implementation "com.mikepenz:materialdrawer-iconics:$materialDrawerVersion"
kapt "com.google.dagger:dagger-compiler:$daggerVersion"
implementation "com.google.dagger:dagger:$daggerVersion"
implementation "androidx.navigation:navigation-fragment:$androidXNavigationVersion"
implementation "androidx.navigation:navigation-ui:$androidXNavigationVersion"
implementation "androidx.navigation:navigation-fragment-ktx:$androidXNavigationVersion"
implementation "androidx.navigation:navigation-ui-ktx:$androidXNavigationVersion"
}