-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathbuild.gradle
118 lines (107 loc) · 3.4 KB
/
build.gradle
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
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
/*
* Copyright 2023 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
buildscript {
repositories {
google()
jcenter()
maven {
url "https://plugins.gradle.org/m2/"
}
}
dependencies {
classpath 'com.android.tools.build:gradle:4.0.2'
}
}
allprojects {
repositories {
google()
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
delete "clickstream/build/"
}
ext {
buildToolsVersion = "30.0.2"
compileSdkVersion = 30
minSdkVersion = 16
targetSdkVersion = 30
awsSdkVersion = '2.51.0'
amplifySdkVersion = '1.37.2'
lifecycleVersion = "2.6.1"
dependency = [
android: [
desugartools: 'com.android.tools:desugar_jdk_libs:1.0.9',
],
androidx: [
test: 'androidx.test:core:1.5.0',
lifecycle_common: "androidx.lifecycle:lifecycle-common-java8:$lifecycleVersion",
lifecycle_process: "androidx.lifecycle:lifecycle-process:$lifecycleVersion",
],
amplifyframework: [
core: "com.amplifyframework:core:$amplifySdkVersion"
],
aws: [
mobileclient: "com.amazonaws:aws-android-sdk-mobile-client:$awsSdkVersion"
],
okhttp: 'com.squareup.okhttp3:okhttp:4.9.1',
junit: 'junit:junit:4.13.2',
mockito: 'org.mockito:mockito-core:4.11.0',
mockitoinline: 'org.mockito:mockito-inline:4.11.0',
moco: 'com.github.dreamhead:moco-core:1.4.0',
robolectric: 'org.robolectric:robolectric:4.9.2',
]
}
subprojects { project ->
afterEvaluate {
configAndroidLibrary(project)
project.apply from: '../jacoco.gradle'
project.apply from: '../publishing.gradle'
}
}
private void configAndroidLibrary(Project project) {
project.android {
buildToolsVersion rootProject.ext.buildToolsVersion
compileSdkVersion rootProject.ext.compileSdkVersion
defaultConfig {
multiDexEnabled true
minSdkVersion project.findProperty('minSdkVersion')
targetSdkVersion rootProject.ext.targetSdkVersion
versionName project.ext.VERSION_NAME
consumerProguardFiles rootProject.file('configuration/consumer-rules.pro')
testOptions {
animationsDisabled = true
unitTests {
includeAndroidResources = true
}
}
}
lintOptions {
warningsAsErrors true
abortOnError true
enable 'UnusedResources'
enable 'NewerVersionAvailable'
}
compileOptions {
coreLibraryDesugaringEnabled true
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
project.dependencies {
coreLibraryDesugaring dependency.android.desugartools
}
}