summaryrefslogtreecommitdiff
path: root/sample/build.gradle
blob: 329db202afcf519374088ea803d757eaf65892e6 (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
apply plugin: 'com.android.application'

android {
    compileSdkVersion project.androidTargetSdk

    defaultConfig {
        multiDexEnabled true
        minSdkVersion 19
        targetSdkVersion project.androidTargetSdk
        versionCode 411
        versionName "4.1.1"
    }

    def validConfig
    def keystoreFile
    def keystorePassword
    def keystoreAlias

    try {
        Properties properties = new Properties()
        properties.load(project.rootProject.file('local.properties').newDataInputStream())
        keystoreFile = properties.getProperty('keystore.file')
        keystorePassword = properties.getProperty('keystore.password')
        keystoreAlias = properties.getProperty('keystore.alias')
        validConfig = keystoreFile != null && keystorePassword != null && keystoreAlias != null
    } catch (error) {
        validConfig = false
    }

    if (validConfig) {
        System.out.println("Release signing configured with " + keystoreFile)
        signingConfigs {
            release {
                storeFile project.rootProject.file(keystoreFile)
                storePassword keystorePassword
                keyAlias keystoreAlias
                keyPassword keystorePassword
            }
        }
    } else {
        System.out.println("Specify keystore.file, keystore.alias and keystore.password in local.properties to enable release signing.")
    }

    buildTypes {
        release {
            if (validConfig) {
                signingConfig signingConfigs.release
            }

            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }

    compileOptions {
        coreLibraryDesugaringEnabled true
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }

    lintOptions {
        // Error: The lint detector
        //    androidx.appcompat.view.OnClickXmlDetector
        // called context.getMainProject() during module analysis.
        disable 'UsingOnClickInXml'
    }
}


dependencies {
    // If you use this from an external project, use the following instead:
    //   implementation 'com.journeyapps:zxing-android-embedded:<version>'
    implementation project(':zxing-android-embedded')

    implementation 'androidx.appcompat:appcompat:1.3.1'
    implementation 'androidx.legacy:legacy-support-v13:1.0.0'
    implementation "androidx.activity:activity:1.3.1"

    // Desugaring and multidex is required for API < 21.
    coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:1.1.5'
    implementation 'androidx.multidex:multidex:2.0.1'

    // leakcanary is for development purposes only
    // https://github.com/square/leakcanary
    debugImplementation 'com.squareup.leakcanary:leakcanary-android:2.7'

    // AboutLibraries
    implementation 'com.mikepenz:aboutlibraries:6.2.3'
}