X-Git-Url: https://gitweb.stoutner.com/?a=blobdiff_plain;f=app%2Fbuild.gradle;h=22cfd8f3aa4df0e1edbf7b77c6d46484a24705a4;hb=4196bafc4069857b554ac95addcae92fcabae901;hp=9cb5c59c962f4ce78cd755f2c59f6eab2deed02f;hpb=13af786f465d2893b650cf848b65524dda58ade5;p=PrivacyBrowserAndroid.git diff --git a/app/build.gradle b/app/build.gradle index 9cb5c59c..ae709794 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -1,7 +1,7 @@ -/** - * Copyright 2016 Soren Stoutner . +/* + * Copyright © 2016-2020 Soren Stoutner . * - * This file is part of Privacy Browser. + * This file is part of Privacy Browser . * * Privacy Browser is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -18,42 +18,83 @@ */ apply plugin: 'com.android.application' +apply plugin: 'kotlin-android' +apply plugin: 'kotlin-android-extensions' android { - signingConfigs { - } - compileSdkVersion 23 - buildToolsVersion "23.0.2" + compileSdkVersion 29 + buildToolsVersion '29.0.2' + defaultConfig { - applicationId "com.stoutner.privacybrowser" - minSdkVersion 10 - targetSdkVersion 23 - versionCode 1 - versionName "1.0" + minSdkVersion 19 + targetSdkVersion 29 + versionCode 51 + versionName "3.5.1" + + // `multiDexEnabled` can possibly be removed once the `minSdkVersion` is >= 21. + multiDexEnabled true } + buildTypes { - release { + debug { minifyEnabled false + shrinkResources false + } + + release { + minifyEnabled true + shrinkResources true proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } + + // Gradle requires a `flavorDimension`, but it isn't used for anything in Privacy Browser. + flavorDimensions "basic" + productFlavors { standard { applicationId "com.stoutner.privacybrowser.standard" - versionName "1.0-standard" + dimension "basic" } free { applicationId "com.stoutner.privacybrowser.free" - versionName "1.0-free" + dimension "basic" } } + + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_8 + targetCompatibility JavaVersion.VERSION_1_8 + } } -dependencies { - compile fileTree(dir: 'libs', include: ['*.jar']) - compile 'com.android.support:appcompat-v7:23.1.1' - compile 'com.android.support:design:23.1.1' - compile 'com.android.support:support-v4:23.1.1' - compile 'com.google.android.gms:play-services-ads:8.4.0' +repositories { + mavenCentral() } + +dependencies { + implementation fileTree(include: ['*.jar'], dir: 'libs') + + // Include the following AndroidX libraries. + implementation 'androidx.arch.core:core-common:2.1.0' + implementation 'androidx.arch.core:core-runtime:2.1.0' + implementation 'androidx.appcompat:appcompat:1.2.0' + implementation 'androidx.cardview:cardview:1.0.0' + implementation 'androidx.coordinatorlayout:coordinatorlayout:1.1.0' + implementation "androidx.core:core-ktx:1.3.1" + implementation 'androidx.drawerlayout:drawerlayout:1.1.1' + implementation 'androidx.preference:preference:1.1.1' + implementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0' + implementation 'androidx.viewpager:viewpager:1.0.0' + implementation 'androidx.webkit:webkit:1.3.0' + + // Include the Kotlin standard libraries. This should be the same version number listed in project build.gradle. + implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.4.10" + + // Include the Google material library. + implementation 'com.google.android.material:material:1.2.1' + + // Only compile Firebase ads for the free flavor. + freeImplementation 'com.google.firebase:firebase-ads:19.4.0' +} \ No newline at end of file