summaryrefslogtreecommitdiff
path: root/build.gradle
blob: aa2bb3baecf5a70b1cddf16767fb73ce3d0f39df (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
buildscript {
    repositories {
        google()
        mavenCentral()
        gradlePluginPortal()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:4.2.2'
        classpath 'com.getkeepsafe.dexcount:dexcount-gradle-plugin:3.0.1'
        classpath 'de.timfreiheit.resourceplaceholders:placeholders:0.4'
        classpath "gradle.plugin.com.github.spotbugs.snom:spotbugs-gradle-plugin:4.7.0"
        classpath 'org.codehaus.groovy:groovy-xml:3.0.9'
    }
}

allprojects {
    repositories {
        google()
        mavenCentral()
        maven { url "https://jitpack.io" }
    }
}

// Disable predex if requested (we can"t predex in Circle CI
// See http://tools.android.com/tech-docs/new-build-system/tips#TOC-Improving-Build-Server-performance
// and https://circleci.com/docs/android
project.ext.preDexLibs = !project.hasProperty("disablePreDex")

subprojects {
    project.plugins.whenPluginAdded { plugin ->
        if ("com.android.build.gradle.AppPlugin" == plugin.class.name) {
            project.android.dexOptions.preDexLibraries = rootProject.ext.preDexLibs
        } else if ("com.android.build.gradle.LibraryPlugin" == plugin.class.name) {
            project.android.dexOptions.preDexLibraries = rootProject.ext.preDexLibs
        }
    }
}

project.ext {
    // AndroidX
    annotationVersion = "1.2.0"
    appcompatVersion = "1.3.1"
    coreVersion = "1.5.0"
    fragmentVersion = "1.3.6"
    mediaVersion = "1.4.3"
    paletteVersion = "1.0.0"
    preferenceVersion = "1.1.1"
    recyclerViewVersion = "1.2.1"
    viewPager2Version = "1.1.0-beta01"
    workManagerVersion = "2.3.4"
    googleMaterialVersion = "1.4.0"

    // Third-party
    commonslangVersion = "3.6"
    commonsioVersion = "2.5"
    jsoupVersion = "1.11.2"
    glideVersion = "4.8.0"
    okhttpVersion = "3.12.10"
    okioVersion = "1.17.5"
    eventbusVersion = "3.2.0"
    rxAndroidVersion = "2.1.1"
    rxJavaVersion = "2.2.2"
    iconifyVersion = "2.2.2"
    exoPlayerVersion = "2.14.2"
    audioPlayerVersion = "v2.0.0"

    // Only used for free builds. This version should be updated regularly.
    conscryptVersion = "2.5.2"

    // Google Play build
    wearableSupportVersion = "2.6.0"
    playServicesVersion = "8.4.0"

    //Tests
    awaitilityVersion = "3.1.6"
    junitVersion = "4.13"
    robolectricVersion = "4.5-alpha-1"
    robotiumSoloVersion = "5.6.3"
    espressoVersion = "3.2.0"
    runnerVersion = "1.2.0"
    rulesVersion = "1.2.0"
}

apply plugin: "checkstyle"
checkstyle {
    toolVersion '8.24'
}

task checkstyle(type: Checkstyle) {
    classpath = files()
    source "${project.rootDir}"
    exclude("**/gen/**")
    exclude("**/generated/**")
}