]> gitweb.stoutner.com Git - PrivacyBrowserAndroid.git/blob - app/build.gradle
80662c0dc93a783127b0eecce6deebab7b68ed65
[PrivacyBrowserAndroid.git] / app / build.gradle
1 /*
2  * Copyright © 2016-2018 Soren Stoutner <soren@stoutner.com>.
3  *
4  * This file is part of Privacy Browser <https://www.stoutner.com/privacy-browser>.
5  *
6  * Privacy Browser 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 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.  If not, see <http://www.gnu.org/licenses/>.
18  */
19
20 apply plugin: 'com.android.application'
21
22 android {
23     compileSdkVersion 27
24     buildToolsVersion '27.0.3'
25
26     defaultConfig {
27         minSdkVersion 19
28         targetSdkVersion 27
29         versionCode 34
30         versionName "2.11"
31     }
32
33     buildTypes {
34         debug {
35             minifyEnabled false
36             shrinkResources false
37         }
38
39         release {
40             minifyEnabled true
41             shrinkResources true
42             proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
43         }
44     }
45
46     // Gradle requires a `flavorDimension`, but it isn't used for anything in Privacy Browser.
47     flavorDimensions "basic"
48
49     productFlavors {
50         standard {
51             applicationId "com.stoutner.privacybrowser.standard"
52             dimension "basic"
53         }
54
55         free {
56             applicationId "com.stoutner.privacybrowser.free"
57             dimension "basic"
58         }
59     }
60
61     compileOptions {
62         sourceCompatibility JavaVersion.VERSION_1_8
63         targetCompatibility JavaVersion.VERSION_1_8
64     }
65
66     // Allow the releases to be built even though the versions of the support and consent libraries don't match (Privacy Browser doesn't use the consent library form, so it doesn't matter).
67     lintOptions {
68         abortOnError false
69     }
70 }
71
72 dependencies {
73     implementation fileTree(include: ['*.jar'], dir: 'libs')
74     implementation 'com.android.support:design:27.0.2'
75
76     // Only compile Firebase ads for the free flavor.
77     freeImplementation 'com.google.firebase:firebase-ads:15.0.1'
78
79     // Only compile the consent library for the free flavor.  It is used to comply with the GDPR in Europe.
80     freeImplementation 'com.google.android.ads.consent:consent-library:1.0.6'
81 }