plugins { id 'com.android.application' id 'kotlin-android' id 'org.jmailen.kotlinter' version "4.3.0" } android { namespace "com.github.gotify" compileSdk 34 defaultConfig { applicationId "com.github.gotify" minSdk 23 targetSdk 34 versionCode 31 versionName "2.8.0" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" vectorDrawables.useSupportLibrary = true signingConfig signingConfigs.debug resValue "string", "app_name", "Gotify" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } development { applicationIdSuffix ".dev" debuggable true resValue "string", "app_name", "Gotify DEV" } } buildFeatures { viewBinding true buildConfig true } compileOptions { sourceCompatibility JavaVersion.VERSION_17 targetCompatibility JavaVersion.VERSION_17 } kotlinOptions { jvmTarget = '17' } packagingOptions { resources { excludes += ['META-INF/DEPENDENCIES'] } } lint { disable 'GoogleAppIndexingWarning' lintConfig file('../lint.xml') } } if (project.hasProperty('sign')) { android { signingConfigs { release { storeFile file(System.getenv("RELEASE_STORE_FILE")) storePassword System.getenv("RELEASE_STORE_PASSWORD") keyAlias System.getenv("RELEASE_KEY_ALIAS") keyPassword System.getenv("RELEASE_KEY_PASSWORD") } } } android.buildTypes.release.signingConfig android.signingConfigs.release } dependencies { def coil_version = "2.6.0" def markwon_version = "4.6.2" def tinylog_version = "2.7.0" implementation project(':client') implementation 'androidx.appcompat:appcompat:1.7.0' implementation 'androidx.core:core-splashscreen:1.0.1' implementation 'com.google.android.material:material:1.12.0' implementation 'androidx.constraintlayout:constraintlayout:2.1.4' implementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0' implementation 'androidx.vectordrawable:vectordrawable:1.2.0' implementation 'androidx.preference:preference-ktx:1.2.1' implementation 'com.github.cyb3rko:QuickPermissions-Kotlin:1.1.3' implementation "io.coil-kt:coil:$coil_version" implementation "io.coil-kt:coil-svg:$coil_version" implementation "io.noties.markwon:core:$markwon_version" implementation "io.noties.markwon:image-coil:$markwon_version" implementation "io.noties.markwon:image:$markwon_version" implementation "io.noties.markwon:ext-tables:$markwon_version" implementation "io.noties.markwon:ext-strikethrough:$markwon_version" implementation "org.tinylog:tinylog-api-kotlin:$tinylog_version" implementation "org.tinylog:tinylog-impl:$tinylog_version" } configurations { configureEach { exclude group: 'org.json', module: 'json' exclude group: 'androidx.lifecycle', module: 'lifecycle-viewmodel-ktx' } }