build.gradle.kts (3018B)
1 plugins { 2 alias(libs.plugins.android.application) 3 // id("com.google.gms.google-services") // Disabled for multi-client testing 4 kotlin("android") 5 id("androidx.navigation.safeargs.kotlin") 6 id ("kotlin-parcelize") 7 } 8 9 android { 10 namespace = "org.gnunet.gnunetmessenger" 11 compileSdk = 35 12 13 defaultConfig { 14 applicationId = "org.gnunet.gnunetmessenger" 15 minSdk = 24 16 targetSdk = 35 17 versionCode = 1 18 versionName = "1.0" 19 20 testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" 21 } 22 23 flavorDimensions += "user" 24 25 productFlavors { 26 create("alice") { 27 dimension = "user" 28 applicationId = "org.gnunet.gnunetmessenger" 29 versionNameSuffix = "-alice" 30 resValue("string", "app_name", "GNUnet Messenger") 31 resValue("string", "default_account_name", "Alice") 32 } 33 34 create("bob") { 35 dimension = "user" 36 applicationId = "org.gnunet.gnunetmessenger.bob" 37 versionNameSuffix = "-bob" 38 resValue("string", "app_name", "GNUnet Messenger 2") 39 resValue("string", "default_account_name", "Bob") 40 } 41 } 42 43 buildTypes { 44 release { 45 isMinifyEnabled = false 46 signingConfig = signingConfigs.getByName("debug") 47 proguardFiles( 48 getDefaultProguardFile("proguard-android-optimize.txt"), 49 "proguard-rules.pro" 50 ) 51 buildConfigField("boolean", "ALLOW_RESET", "false") 52 } 53 debug { 54 buildConfigField("boolean", "ALLOW_RESET", "true") 55 } 56 } 57 compileOptions { 58 sourceCompatibility = JavaVersion.VERSION_11 59 targetCompatibility = JavaVersion.VERSION_11 60 } 61 kotlinOptions { 62 jvmTarget = "11" 63 } 64 buildFeatures { 65 dataBinding = true 66 viewBinding = true 67 aidl = true 68 buildConfig = true 69 } 70 } 71 72 dependencies { 73 74 implementation(libs.camerax.core) 75 implementation(libs.camerax.camera2) 76 implementation(libs.camerax.lifecycle) 77 implementation(libs.camerax.view) 78 implementation(libs.mlkit.barcode) 79 implementation(libs.zxingcore) 80 implementation(libs.zxingandroidembedded) 81 implementation(libs.androidx.cardview) 82 implementation(libs.androidx.core.ktx) 83 implementation(libs.androidx.appcompat) 84 implementation(libs.androidx.navigation.fragment) 85 implementation(libs.androidx.navigation.ui) 86 implementation(libs.material) 87 implementation(libs.androidx.navigation.fragment.ktx) 88 implementation(libs.androidx.navigation.ui.ktx) 89 testImplementation(libs.junit) 90 androidTestImplementation(libs.androidx.junit) 91 androidTestImplementation(libs.androidx.espresso.core) 92 implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.8.1") 93 androidTestImplementation("org.jetbrains.kotlinx:kotlinx-coroutines-test:1.8.1") 94 testImplementation("junit:junit:4.13.2") 95 }