-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathbuild.gradle
131 lines (110 loc) · 4.75 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
119
120
121
122
123
124
125
126
127
128
129
130
131
/*
* Copyright (c) 2017 Amit Kumar.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software distributed
* under the License 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.
*/
apply plugin: 'com.android.application'
apply from: "$rootDir/script/quality/quality-android-app.gradle"
android {
compileSdkVersion rootProject.ext.androidCompileSdkVersion
buildToolsVersion rootProject.ext.androidBuildToolsVersion
defaultConfig {
applicationId "com.github.amitkma.boilerplate.app"
minSdkVersion rootProject.ext.androidMinSdkVersion
targetSdkVersion rootProject.ext.androidTargetSdkVersion
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
if (project.hasProperty('devBuild')) {
aaptOptions.cruncherEnabled = false
}
dexOptions {
javaMaxHeapSize "2048m"
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
dependencies {
def mobileUiDependencies = rootProject.ext.mobileUiDependencies
def mobileUiTestDependencies = rootProject.ext.mobileUiTestDependencies
implementation project(':presentation')
implementation project(':data')
implementation project(':local-persistence')
implementation project(':remote')
// RxJava and RxAndroid
implementation mobileUiDependencies.rxJava
implementation mobileUiDependencies.rxAndroid
compileOnly mobileUiDependencies.javaxAnnotation
implementation mobileUiDependencies.javaxInject
implementation mobileUiDependencies.guava
// Android support libraries
implementation mobileUiDependencies.androidAnnotations
implementation mobileUiDependencies.supportV4
implementation mobileUiDependencies.supportV13
implementation mobileUiDependencies.supportAppCompatV7
implementation mobileUiDependencies.supportRecyclerView
implementation mobileUiDependencies.supportDesign
// Timber for logging
implementation mobileUiDependencies.timber
// Glide for image loading
implementation mobileUiDependencies.glide
// Dagger for injection
implementation mobileUiDependencies.dagger
implementation mobileUiDependencies.daggerAndroid
implementation mobileUiDependencies.daggerSupport
annotationProcessor mobileUiDependencies.daggerCompiler
annotationProcessor mobileUiDependencies.daggerProcessor
provided 'org.glassfish:javax.annotation:10.0-b28'
// Architecture Components
implementation mobileUiDependencies.archRuntime
implementation mobileUiDependencies.archExtensions
implementation mobileUiDependencies.roomRxJava
annotationProcessor mobileUiDependencies.archCompiler
// Instrumentation test dependencies
androidTestImplementation mobileUiTestDependencies.junit
androidTestImplementation mobileUiTestDependencies.mockito
androidTestImplementation mobileUiTestDependencies.mockitoAndroid
androidTestImplementation mobileUiTestDependencies.supportAppCompatV7
androidTestImplementation mobileUiTestDependencies.supportRecyclerView
androidTestImplementation mobileUiTestDependencies.supportV4
androidTestImplementation mobileUiTestDependencies.supportDesign
androidTestImplementation(mobileUiTestDependencies.espressoCore) {
exclude group: 'com.android.support', module: 'support-annotations'
}
androidTestImplementation(mobileUiTestDependencies.androidRunner) {
exclude group: 'com.android.support', module: 'support-annotations'
}
androidTestImplementation(mobileUiTestDependencies.androidRules) {
exclude group: 'com.android.support', module: 'support-annotations'
}
androidTestImplementation(mobileUiTestDependencies.espressoIntents) {
exclude group: 'com.android.support', module: 'support-annotations'
}
androidTestImplementation(mobileUiTestDependencies.espressoContrib) {
exclude module: 'appcompat'
exclude module: 'appcompat-v7'
exclude module: 'support-v4'
exclude module: 'support-v13'
exclude module: 'support-annotations'
exclude module: 'recyclerview-v7'
exclude module: 'design'
}
}