]> gitweb.stoutner.com Git - PrivacyBrowserAndroid.git/blob - app/build.gradle
Release 3.14.
[PrivacyBrowserAndroid.git] / app / build.gradle
1 /*
2  * Copyright 2016-2023 Soren Stoutner <soren@stoutner.com>.
3  *
4  * This file is part of Privacy Browser Android <https://www.stoutner.com/privacy-browser-android>.
5  *
6  * Privacy Browser Android is free software: you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation, either version 3 of the License, or
9  * (at your option) any later version.
10  *
11  * Privacy Browser Android is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with Privacy Browser Android.  If not, see <http://www.gnu.org/licenses/>.
18  */
19
20 plugins {
21     id 'com.android.application'
22     id 'kotlin-android'
23 }
24
25 android {
26     compileSdk 33
27
28     defaultConfig {
29         minSdk 24
30         targetSdk 33
31         versionCode 69
32         versionName "3.14"
33         resourceConfigurations += ['en', 'de', 'es', 'fr', 'it', 'pt-rBR', 'ru', 'tr', 'zh-rCN']
34     }
35
36     // Specify the compile Java version.  This must match the Kotlin JVM target.  For some reason the system was not setting this correctly.  These can probably be removed in the future.
37     compileOptions {
38         sourceCompatibility JavaVersion.VERSION_17
39         targetCompatibility JavaVersion.VERSION_17
40     }
41
42     // Specify the Kotlin JVM target.  This must match the compile Java version.  For some reason the system was not setting this correctly.  These can probably be removed in the future.
43     kotlinOptions {
44         jvmTarget = 17
45     }
46
47     buildTypes {
48         debug {
49             minifyEnabled false
50             shrinkResources false
51         }
52
53         release {
54             minifyEnabled true
55             shrinkResources true
56             proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
57         }
58     }
59
60     // Gradle requires a `flavorDimension`, but it isn't used for anything in Privacy Browser.
61     flavorDimensions "basic"
62
63     productFlavors {
64         standard {
65             applicationId "com.stoutner.privacybrowser.standard"
66             dimension "basic"
67         }
68
69         alt {
70             applicationId "com.stoutner.privacybrowser.alt"
71             dimension "basic"
72         }
73     }
74
75     namespace 'com.stoutner.privacybrowser'
76 }
77
78 dependencies {
79     // Include the following AndroidX libraries.
80     implementation "androidx.activity:activity-ktx:1.7.0-alpha04"
81     implementation 'androidx.arch.core:core-common:2.2.0'
82     implementation 'androidx.arch.core:core-runtime:2.2.0'
83     implementation 'androidx.appcompat:appcompat:1.6.1'
84     implementation 'androidx.cardview:cardview:1.0.0'
85     implementation 'androidx.coordinatorlayout:coordinatorlayout:1.2.0'
86     implementation 'androidx.core:core-ktx:1.10.0'
87     implementation 'androidx.drawerlayout:drawerlayout:1.2.0'
88     implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.6.1'
89     implementation 'androidx.preference:preference-ktx:1.2.0'
90     implementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0'
91     implementation 'androidx.viewpager:viewpager:1.0.0'
92     implementation 'androidx.webkit:webkit:1.6.1'
93
94     // Include the Kotlin standard library.  This should be the same version number listed in project build.gradle.
95     implementation 'org.jetbrains.kotlin:kotlin-stdlib:1.8.10'
96
97     // Include the Google material library.
98     implementation 'com.google.android.material:material:1.8.0'
99 }