build.gradle (3052B)
1 /* 2 * This file is part of GNU Taler 3 * (C) 2020 Taler Systems S.A. 4 * 5 * GNU Taler is free software; you can redistribute it and/or modify it under the 6 * terms of the GNU General Public License as published by the Free Software 7 * Foundation; either version 3, or (at your option) any later version. 8 * 9 * GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY 10 * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR 11 * A PARTICULAR PURPOSE. See the GNU General Public License for more details. 12 * 13 * You should have received a copy of the GNU General Public License along with 14 * GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> 15 */ 16 17 plugins { 18 id 'com.android.library' 19 id 'kotlin-android' 20 id 'kotlinx-serialization' 21 } 22 23 android { 24 namespace 'net.taler.common' 25 compileSdkVersion 36 26 27 defaultConfig { 28 minSdkVersion 21 29 testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" 30 consumerProguardFiles 'consumer-rules.pro' 31 } 32 33 buildTypes { 34 release { 35 minifyEnabled true 36 proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' 37 } 38 debug { 39 minifyEnabled minify_debug 40 proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' 41 } 42 } 43 44 buildFeatures { 45 viewBinding = true 46 } 47 compileOptions { 48 sourceCompatibility = JavaVersion.VERSION_17 49 targetCompatibility = JavaVersion.VERSION_17 50 } 51 kotlinOptions { 52 jvmTarget = "17" 53 } 54 packagingOptions { 55 resources { 56 excludes += ['META-INF/*.kotlin_module'] 57 } 58 } 59 } 60 61 dependencies { 62 implementation 'androidx.appcompat:appcompat:1.7.1' 63 implementation 'androidx.core:core-ktx:1.17.0' 64 implementation "androidx.constraintlayout:constraintlayout:$constraintlayout_version" 65 implementation 'androidx.localbroadcastmanager:localbroadcastmanager:1.1.0' 66 67 // Navigation 68 implementation "androidx.navigation:navigation-ui-ktx:$nav_version" 69 implementation "androidx.navigation:navigation-fragment-ktx:$nav_version" 70 71 // ViewModel and LiveData 72 implementation "androidx.lifecycle:lifecycle-livedata-ktx:$lifecycle_version" 73 74 // QR codes 75 implementation 'com.google.zxing:core:3.5.3' // needs minSdkVersion 24+ or desugar 76 77 // JSON parsing and serialization 78 api 'org.jetbrains.kotlinx:kotlinx-serialization-json:1.9.0' 79 testImplementation "junit:junit:$junit_version" 80 testImplementation 'org.json:json:20250517' 81 82 // Networking 83 api "io.ktor:ktor-client:$ktor_version" 84 api "io.ktor:ktor-client-okhttp:$ktor_version" 85 implementation "io.ktor:ktor-client-serialization-jvm:$ktor_version" 86 implementation "io.ktor:ktor-serialization-kotlinx-json:$ktor_version" 87 implementation "io.ktor:ktor-client-content-negotiation:$ktor_version" 88 implementation("io.ktor:ktor-client-logging:$ktor_version") 89 }