FairEmail/app/build.gradle

180 lines
6.5 KiB
Groovy
Raw Normal View History

2018-08-02 13:33:06 +00:00
apply plugin: 'com.android.application'
def keystorePropertiesFile = rootProject.file("keystore.properties")
def keystoreProperties = new Properties()
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
2018-08-02 13:33:06 +00:00
android {
compileSdkVersion 28
defaultConfig {
applicationId "eu.faircode.email"
2018-12-09 17:49:52 +00:00
minSdkVersion 21
2018-08-02 13:33:06 +00:00
targetSdkVersion 28
2019-02-06 17:12:36 +00:00
versionCode 322
versionName "1.322"
2018-08-14 05:53:24 +00:00
archivesBaseName = "FairEmail-v$versionName"
2018-08-03 12:07:51 +00:00
javaCompileOptions {
annotationProcessorOptions {
arguments = ["room.schemaLocation": "$projectDir/schemas".toString()]
}
}
2018-08-02 13:33:06 +00:00
}
signingConfigs {
release {
storeFile file(keystoreProperties['storeFile'])
storePassword keystoreProperties['storePassword']
keyAlias keystoreProperties['keyAlias']
keyPassword keystoreProperties['keyPassword']
}
}
2018-08-02 13:33:06 +00:00
buildTypes {
release {
2018-09-03 08:04:51 +00:00
debuggable = false
2018-08-02 13:33:06 +00:00
minifyEnabled = true
useProguard = true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
signingConfig signingConfigs.release
2018-12-21 09:18:58 +00:00
}
2018-08-02 13:33:06 +00:00
debug {
2018-09-04 18:06:22 +00:00
debuggable = true
2018-11-22 08:00:02 +00:00
minifyEnabled = false
useProguard = false
2018-08-02 13:33:06 +00:00
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
2019-01-07 10:45:17 +00:00
}
}
flavorDimensions "all"
productFlavors {
full {
dimension "all"
buildConfigField "boolean", "PLAY_STORE_RELEASE", "false"
2019-01-13 09:00:12 +00:00
buildConfigField "String", "PRO_FEATURES", "\"https://email.faircode.eu/donate/\""
buildConfigField "String", "GITHUB_LATEST_API", "\"https://api.github.com/repos/M66B/open-source-email/releases/latest\""
2019-01-09 18:15:47 +00:00
buildConfigField "boolean", "BETA_RELEASE", "true"
}
play_beta {
dimension "all"
buildConfigField "boolean", "PLAY_STORE_RELEASE", "true"
buildConfigField "String", "PRO_FEATURES", "\"https://email.faircode.eu/#pro\""
buildConfigField "String", "GITHUB_LATEST_API", "\"\""
buildConfigField "boolean", "BETA_RELEASE", "true"
2018-08-02 13:33:06 +00:00
}
2019-01-09 18:15:47 +00:00
play_release {
2019-01-07 10:45:17 +00:00
dimension "all"
buildConfigField "boolean", "PLAY_STORE_RELEASE", "true"
buildConfigField "String", "PRO_FEATURES", "\"https://email.faircode.eu/#pro\""
buildConfigField "String", "GITHUB_LATEST_API", "\"\""
2019-01-09 18:15:47 +00:00
buildConfigField "boolean", "BETA_RELEASE", "false"
2019-01-07 10:45:17 +00:00
}
2018-08-02 13:33:06 +00:00
}
2018-12-21 09:18:58 +00:00
lintOptions {
disable 'MissingTranslation'
2019-01-19 15:25:09 +00:00
abortOnError false
2018-12-21 09:18:58 +00:00
}
2018-08-02 13:33:06 +00:00
packagingOptions {
pickFirst 'META-INF/LICENSE.txt'
2018-11-09 07:38:07 +00:00
// keep lib/armeabi-v7a/libsqlite3x.so
// keep lib/arm64-v8a/libsqlite3x.so
2018-11-09 07:38:07 +00:00
// keep lib/x86/libsqlite3x.so
// keep lib/x86_64/libsqlite3x.so
2018-08-02 13:33:06 +00:00
}
}
repositories {
2018-10-12 08:33:23 +00:00
google()
2018-08-02 13:33:06 +00:00
jcenter()
maven {
url "https://repo1.maven.org/maven2/"
2018-08-02 13:33:06 +00:00
}
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
def appcompat_version = "1.0.2"
def recyclerview_version = "1.0.0"
2018-11-13 14:33:41 +00:00
def coordinatorlayout_version = "1.0.0"
2018-09-11 16:28:43 +00:00
def constraintlayout_version = "1.1.3"
2018-11-13 14:33:41 +00:00
def material_version = "1.0.0"
def browser_version = "1.0.0"
2018-09-26 12:53:15 +00:00
def lifecycle_version = "2.0.0"
2018-10-10 11:03:32 +00:00
def room_version = "2.0.0"
def paging_version = "2.0.0"
2018-12-16 12:20:53 +00:00
def billingclient_version = "1.2"
2018-11-23 10:56:17 +00:00
def javamail_version = "1.6.3"
2018-08-07 05:30:15 +00:00
def jsoup_version = "1.11.3"
2018-08-23 09:48:27 +00:00
def jcharset_version = "2.0"
2019-01-17 20:32:44 +00:00
def icu4j_version = "63.1"
2018-09-18 14:22:10 +00:00
def dnsjava_version = "2.1.8"
2018-10-28 12:49:13 +00:00
def openpgp_version = "12.0"
2018-12-16 09:23:26 +00:00
def requery_version = "3.26.0"
2018-08-07 05:30:15 +00:00
2018-11-10 09:09:56 +00:00
// https://developer.android.com/topic/libraries/support-library/androidx-rn
// https://developer.android.com/jetpack/docs/release-notes
// https://mvnrepository.com/artifact/androidx.appcompat/appcompat
2018-11-13 15:03:20 +00:00
implementation "androidx.appcompat:appcompat:$appcompat_version"
2018-11-10 09:09:56 +00:00
// https://mvnrepository.com/artifact/androidx.recyclerview/recyclerview
2018-11-13 14:33:41 +00:00
implementation "androidx.recyclerview:recyclerview:$recyclerview_version"
implementation "androidx.recyclerview:recyclerview-selection:$recyclerview_version"
2018-11-10 09:09:56 +00:00
// https://mvnrepository.com/artifact/androidx.coordinatorlayout/coordinatorlayout
2018-11-13 14:33:41 +00:00
implementation "androidx.coordinatorlayout:coordinatorlayout:$coordinatorlayout_version"
2018-11-10 09:09:56 +00:00
// https://mvnrepository.com/artifact/androidx.constraintlayout/constraintlayout
2018-09-12 16:54:48 +00:00
implementation "androidx.constraintlayout:constraintlayout:$constraintlayout_version"
2018-11-10 09:09:56 +00:00
// https://mvnrepository.com/artifact/com.google.android.material/material
2018-11-13 14:33:41 +00:00
implementation "com.google.android.material:material:$material_version"
2018-11-10 09:09:56 +00:00
// https://mvnrepository.com/artifact/androidx.browser/browser
2018-11-13 14:33:41 +00:00
implementation "androidx.browser:browser:$browser_version"
2018-08-02 13:33:06 +00:00
2018-11-10 09:09:56 +00:00
// https://mvnrepository.com/artifact/androidx.lifecycle/lifecycle-runtime
2018-08-23 09:48:27 +00:00
implementation "androidx.lifecycle:lifecycle-extensions:$lifecycle_version"
annotationProcessor "androidx.lifecycle:lifecycle-compiler:$lifecycle_version"
2018-11-10 09:09:56 +00:00
// https://mvnrepository.com/artifact/androidx.room/room-runtime
2018-08-23 09:48:27 +00:00
implementation "androidx.room:room-runtime:$room_version"
annotationProcessor "androidx.room:room-compiler:$room_version"
2018-11-10 09:09:56 +00:00
// https://mvnrepository.com/artifact/androidx.paging/paging-runtime
2018-08-23 09:48:27 +00:00
implementation "androidx.paging:paging-runtime:$paging_version"
2018-08-07 06:38:00 +00:00
2018-11-10 09:09:56 +00:00
// https://developer.android.com/google/play/billing/billing_library_releases_notes
2018-08-25 13:32:52 +00:00
implementation "com.android.billingclient:billing:$billingclient_version"
2018-11-10 09:09:56 +00:00
// https://javaee.github.io/javamail/
// https://projects.eclipse.org/projects/ee4j.javamail
2018-08-07 05:30:15 +00:00
implementation "com.sun.mail:android-mail:$javamail_version"
implementation "com.sun.mail:android-activation:$javamail_version"
2018-08-02 13:33:06 +00:00
2018-11-10 09:09:56 +00:00
// https://jsoup.org/
2018-08-07 05:30:15 +00:00
implementation "org.jsoup:jsoup:$jsoup_version"
2018-08-08 05:02:25 +00:00
2018-11-10 09:09:56 +00:00
// http://www.freeutils.net/source/jcharset/
2019-01-16 10:57:57 +00:00
//implementation "net.freeutils:jcharset:$jcharset_version"
2018-09-12 16:54:48 +00:00
2019-01-17 20:32:44 +00:00
// https://mvnrepository.com/artifact/com.ibm.icu/icu4j
//implementation "com.ibm.icu:icu4j:$icu4j_version"
2019-01-17 20:32:44 +00:00
2018-09-18 14:22:10 +00:00
// http://www.xbill.org/dnsjava/
implementation "dnsjava:dnsjava:$dnsjava_version"
2018-10-28 12:49:13 +00:00
// https://github.com/open-keychain/openpgp-api
implementation "org.sufficientlysecure:openpgp-api:$openpgp_version"
2018-11-09 07:38:07 +00:00
// https://github.com/requery/sqlite-android/
implementation "io.requery:sqlite-android:$requery_version"
2018-09-12 19:11:50 +00:00
// git clone https://android.googlesource.com/platform/frameworks/opt/colorpicker
2018-09-12 16:54:48 +00:00
implementation project(path: ':colorpicker')
2018-08-02 13:33:06 +00:00
}