Skip to content

Commit b5196e3

Browse files
committed
Atualizando dependencias
1 parent 081c179 commit b5196e3

File tree

4 files changed

+238
-64
lines changed

4 files changed

+238
-64
lines changed

app/build.gradle

Lines changed: 59 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -5,33 +5,76 @@ apply plugin: 'kotlin-android'
55
apply plugin: 'kotlin-android-extensions'
66

77
android {
8-
compileSdkVersion 29
9-
buildToolsVersion "29.0.2"
8+
9+
def globalConfiguration = rootProject.extensions.getByName("ext")
10+
compileSdkVersion globalConfiguration["compileSDK"]
11+
buildToolsVersion globalConfiguration["buildTools"]
1012
defaultConfig {
1113
applicationId "com.developer.allef.boilerplateapp"
12-
minSdkVersion 18
13-
targetSdkVersion 29
14+
minSdkVersion globalConfiguration["minSDK"]
15+
targetSdkVersion globalConfiguration["targetSDK"]
1416
versionCode 1
15-
versionName "1.0"
17+
versionName "0.0.0.1"
1618
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
19+
multiDexEnabled true
20+
1721
}
1822
buildTypes {
1923
release {
20-
minifyEnabled false
24+
minifyEnabled true
25+
shrinkResources true
26+
useProguard true
2127
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
2228
}
29+
debug{
30+
minifyEnabled false
31+
shrinkResources false
32+
useProguard false
33+
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
34+
testCoverageEnabled = true
35+
}
36+
}
37+
bundle {
38+
language {
39+
enableSplit = true
40+
}
41+
density {
42+
enableSplit = true
43+
}
44+
abi {
45+
enableSplit = true
46+
}
47+
}
48+
flavorDimensions "version"
49+
productFlavors {
50+
homolog {
51+
applicationId "com.developer.allef.boilerplateapp.homolog"
52+
resValue "string", "app_name", "BooilerPlate App Homolog"
53+
dimension "version"
54+
55+
}
56+
prod {
57+
applicationId "com.developer.allef.boilerplateapp"
58+
resValue "string", "app_name", "BooilerPlate App"
59+
dimension "version"
60+
61+
}
2362
}
63+
64+
2465
}
2566

2667
dependencies {
27-
implementation fileTree(dir: 'libs', include: ['*.jar'])
28-
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
29-
implementation 'androidx.appcompat:appcompat:1.1.0'
30-
implementation 'androidx.core:core-ktx:1.0.2'
31-
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
32-
testImplementation 'junit:junit:4.12'
33-
androidTestImplementation 'androidx.test:runner:1.1.1'
34-
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
35-
implementation "com.jakewharton.timber:timber:4.7.1"
3668

37-
}
69+
rootProject.appFoundationModule.each {
70+
add(it.configuration, it.dependency, it.options)
71+
}
72+
rootProject.appNetworkingModule.each {
73+
add(it.configuration, it.dependency, it.options)
74+
}
75+
rootProject.appTestingModule.each {
76+
add(it.configuration, it.dependency, it.options)
77+
}
78+
79+
80+
}
Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,2 @@
11
<resources>
2-
<string name="app_name">BoilerplateApp</string>
32
</resources>

build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
buildscript {
44
apply from: 'dependencies.gradle'
5-
ext.kotlin_version = '1.3.50'
5+
ext.kotlin_version = '1.3.61'
66
repositories {
77
google()
88
jcenter()

dependencies.gradle

Lines changed: 178 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -1,66 +1,198 @@
11
ext {
2-
minSDK = 16
3-
targetSDK = 28
4-
compileSDK = 28
2+
minSDK = 19
3+
targetSDK = 29
4+
compileSDK = 29
5+
buildTools = '29.0.2'
56

67
buildTools = '29.0.0'
7-
jacoco = '0.8.1'
8-
kotlin_version = '1.3.41'
8+
kotlin_version = '1.3.50'
99
lifecycle_version = "2.0.0"
10-
anko_version = "0.10.8"
1110
lottie = "3.0.7"
12-
appCompat = "1.0.2"
13-
androidCore = "1.0.2"
14-
constraintLayout = "1.1.3"
15-
androidMaterial = "1.1.0-alpha06"
11+
appCompat = "1.1.0"
12+
androidCore = "1.2.0"
13+
constraintLayout = "2.0.0-beta2"
14+
androidMaterial = "1.2.0-alpha05"
1615
androidLegacy = "1.0.0"
17-
junitVersion = "4.12"
18-
firebaseCore = "17.0.0"
19-
espressoVersion = "3.2.0"
20-
runnerVersion = "1.2.0"
21-
koin = "1.0.2"
16+
koin = "2.0.1"
2217
nav_version = '2.1.0-beta02'
2318
retrofit_version = '2.5.0'
2419
okhttp_version = '3.12.0'
2520
okhttp_version_loggin = '3.12.0'
2621
gson_version = '2.3.0'
2722
logging_version = '3.4.1'
2823
lifecycle_version = "2.0.0"
24+
glide = '4.9.0'
25+
transitions = '1.0.1'
26+
rxAndroid = '2.1.1'
27+
rxJava = '2.1.1'
28+
rxKotlin = '2.4.0'
29+
rxBinding = '3.1.0'
30+
rxAdapter = '2.3.0'
31+
timber = '2.3.0'
32+
multidex_version = '2.0.1'
33+
34+
35+
//Test
36+
mockitoCore = '2.25.1'
37+
junit_version = '4.12'
38+
truth_version = '1.0'
39+
runner_version = '1.2.0'
40+
espresso_version = '3.2.0'
41+
rules_version = '1.2.0'
42+
runnerVersion = "1.2.0"
43+
androidx_junit_version = "1.1.1"
44+
kointeste = "2.0.1"
45+
mockk = "1.9.1"
46+
mockitokotlin = "2.1.0"
47+
mockwebserver = "3.4.1"
48+
testng = "6.9.6"
2949

30-
dependencies = [
31-
kotlin : "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version",
32-
appCompat : "androidx.appcompat:appcompat:$appCompat",
33-
core : "androidx.core:core-ktx:$androidCore",
34-
materialDesign : "com.google.android.material:material:$androidMaterial",
35-
constraintLayout : "androidx.constraintlayout:constraintlayout:$constraintLayout",
36-
androidLegacy : "androidx.legacy:legacy-support-v4:$androidLegacy",
37-
junit : "junit:junit:$junitVersion",
38-
lifecycleViewModel : "androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycle_version",
39-
lifecycleExtensions: "androidx.lifecycle:lifecycle-extensions:$lifecycle_version",
40-
ankoCommons : "org.jetbrains.anko:anko-commons:$anko_version",
41-
firebaseCore : "com.google.firebase:firebase-core:$firebaseCore",
42-
lottie : "com.airbnb.android:lottie:$lottie",
43-
koin : "org.koin:koin-android:$koin",
44-
navFragment : "androidx.navigation:navigation-fragment-ktx:$nav_version",
45-
navUI : "androidx.navigation:navigation-ui-ktx:$nav_version",
46-
rxandroid : "io.reactivex.rxjava2:rxandroid:2.1.1",
47-
rxjava : "io.reactivex.rxjava2:rxjava:2.1.1",
48-
rxkotlin : "io.reactivex.rxjava2:rxkotlin:2.4.0",
49-
retrofitRx : "com.squareup.retrofit2:adapter-rxjava2:2.3.0",
50-
// ANDROID-NETWORKING
51-
52-
retrofit :"com.squareup.retrofit2:retrofit:$retrofit_version",
53-
gson :"com.squareup.retrofit2:converter-gson:$gson_version",
54-
okHttp :"com.squareup.okhttp3:okhttp:$okhttp_version",
55-
okLogging :"com.squareup.okhttp3:logging-interceptor:$okhttp_version_loggin",
56-
liveDataViewModel :"androidx.lifecycle:lifecycle-extensions:$lifecycle_version"
50+
51+
def modules = [
52+
data : ':data',
53+
domain: ':domain'
5754
]
5855

59-
testDependecies = [
60-
lifecycleTesting: "androidx.arch.core:core-testing:$lifecycle_version",
61-
runner : "androidx.test:runner:$runnerVersion",
62-
espresso : "androidx.test.espresso:espresso-core:$espressoVersion",
56+
///
57+
/// Module Dependencies
58+
///
59+
60+
def supportAnnotationsExclude = {
61+
exclude group: 'com.android.support', module: 'support-annotations'
62+
}
63+
64+
65+
def foundationDependencies = [
66+
kotlin : [group: 'org.jetbrains.kotlin', name: 'kotlin-stdlib-jdk7', version: kotlin_version],
67+
appCompat : [group: 'androidx.appcompat', name: 'appcompat', version: appCompat],
68+
core : [group: 'androidx.core', name: 'core-ktx', version: androidCore],
69+
materialDesign : [group: 'com.google.android.material', name: 'material', version: androidMaterial],
70+
constraintLayout : [group: 'androidx.constraintlayout', name: 'constraintlayout', version: constraintLayout],
71+
androidLegacy : [group: 'androidx.legacy', name: 'legacy-support-v4', version: androidLegacy],
72+
lifecycleViewModel : [group: 'androidx.lifecycle', name: 'lifecycle-viewmodel-ktx', version: lifecycle_version],
73+
lifecycleExtensions: [group: 'androidx.lifecycle', name: 'lifecycle-extensions', version: lifecycle_version],
74+
lottie : [group: 'com.airbnb.android', name: 'lottie', version: lottie],
75+
koin : [group: 'org.koin', name: 'koin-android', version: koin],
76+
navfragment : [group: 'androidx.navigation', name: 'navigation-fragment-ktx', version: nav_version],
77+
navUI : [group: 'androidx.navigation', name: 'navigation-ui-ktx', version: nav_version],
78+
transitions : [group: 'androidx.transition', name: 'transition', version: transitions],
79+
timber : [group: 'com.jakewharton.timber', name: 'timber', version: timber],
80+
multidex : [group: 'androidx.multidex', name: 'multidex', version: multidex_version],
81+
82+
6383
]
6484

85+
def androidNetworking = [
86+
retrofit : [group: 'com.squareup.retrofit2', name: 'retrofit', version: retrofit_version],
87+
gsonRetrofit : [group: 'com.squareup.retrofit2', name: 'converter-gson', version: gson_version],
88+
okHttp : [group: 'com.squareup.okhttp3', name: 'okhttp', version: okhttp_version],
89+
okHttpLogging: [group: 'com.squareup.okhttp3', name: 'logging-interceptor', version: okhttp_version_loggin],
90+
rxAndroid : [group: 'io.reactivex.rxjava2', name: 'rxandroid', version: rxAndroid],
91+
rxJava : [group: 'io.reactivex.rxjava2', name: 'rxjava', version: rxJava],
92+
rxkotlin : [group: 'io.reactivex.rxjava2', name: 'rxkotlin', version: rxKotlin],
93+
rxBinding : [group: 'com.jakewharton.rxbinding3', name: 'rxbinding', version: rxBinding],
94+
retrofitRx : [group: 'com.squareup.retrofit2', name: 'adapter-rxjava2', version: rxAdapter]
95+
]
96+
def imageDownloading = [
97+
glide : [group: 'com.github.bumptech.glide', name: 'glide', version: glide],
98+
glideAnnotation: [group: 'com.github.bumptech.glide', name: 'compiler', version: glide],
99+
100+
]
65101

102+
def testDependencies = [
103+
lifecycleTesting: [group: 'androidx.arch.core', name: 'core-testing', version: lifecycle_version],
104+
runner : [group: 'androidx.test', name: 'runner', version: runnerVersion],
105+
espresso : [group: 'androidx.test.espresso', name: 'espresso-core', version: espresso_version],
106+
junit : [group: 'junit', name: 'junit', version: junit_version],
107+
testRules : [group: 'androidx.test', name: 'rules', version: rules_version],
108+
espressoIdling : [group: 'androidx.test.espresso', name: 'espresso-idling-resource', version: espresso_version],
109+
junitExt : [group: 'androidx.test.ext', name: 'junit', version: androidx_junit_version],
110+
espressoIntent : [group: 'androidx.test.espresso', name: 'espresso-intents', version: espresso_version],
111+
espressoWeb : [group: 'androidx.test.espresso', name: 'espresso-web', version: espresso_version],
112+
truth : [group: 'com.google.truth', name: 'truth', version: truth_version],
113+
koinTest : [group: 'org.koin', name: 'koin-test', version: kointeste],
114+
mockTest : [group: 'io.mockk', name: 'mockk', version: mockk],
115+
mockitoKotlin : [group: 'com.nhaarman.mockitokotlin2', name: 'mockito-kotlin', version: mockitokotlin],
116+
mockWebServer : [group: 'com.squareup.okhttp3', name: 'mockwebserver', version: mockwebserver],
117+
testing : [group: 'org.testng', name: 'testng', version: testng],
118+
mockitoCore : [group: 'org.mockito', name: 'mockito-core', version: mockitoCore],
119+
120+
]
121+
122+
appNetworkingModule = [
123+
[configuration: "implementation", dependency: androidNetworking.retrofit],
124+
[configuration: "implementation", dependency: androidNetworking.gsonRetrofit],
125+
[configuration: "implementation", dependency: androidNetworking.okHttpLogging],
126+
[configuration: "implementation", dependency: androidNetworking.rxAndroid],
127+
[configuration: "implementation", dependency: androidNetworking.rxJava],
128+
[configuration: "implementation", dependency: androidNetworking.rxkotlin],
129+
[configuration: "implementation", dependency: androidNetworking.rxBinding],
130+
[configuration: "implementation", dependency: androidNetworking.retrofitRx],
131+
]
132+
133+
appFoundationModule = [
134+
135+
[configuration: "implementation", dependency: foundationDependencies.kotlin],
136+
[configuration: "implementation", dependency: foundationDependencies.appCompat],
137+
[configuration: "implementation", dependency: foundationDependencies.core],
138+
[configuration: "implementation", dependency: foundationDependencies.materialDesign],
139+
[configuration: "implementation", dependency: foundationDependencies.constraintLayout],
140+
[configuration: "implementation", dependency: foundationDependencies.androidLegacy],
141+
[configuration: "implementation", dependency: foundationDependencies.lifecycleViewModel],
142+
[configuration: "implementation", dependency: foundationDependencies.lifecycleExtensions],
143+
[configuration: "implementation", dependency: foundationDependencies.lottie],
144+
[configuration: "implementation", dependency: foundationDependencies.koin],
145+
[configuration: "implementation", dependency: foundationDependencies.navfragment],
146+
[configuration: "implementation", dependency: foundationDependencies.navUI],
147+
[configuration: "implementation", dependency: foundationDependencies.transitions],
148+
[configuration: "implementation", dependency: foundationDependencies.timber],
149+
[configuration: "implementation", dependency: foundationDependencies.multidex],
150+
151+
/**
152+
* Image Downloading
153+
*/
154+
[configuration: "implementation", dependency: imageDownloading.glide],
155+
[configuration: "annotationProcessor", dependency: imageDownloading.glideAnnotation],
156+
]
157+
appTestingModule = [
158+
[configuration: "androidTestImplementation", dependency: testDependencies.espresso,
159+
options : supportAnnotationsExclude],
160+
[configuration: "testImplementation", dependency: testDependencies.junit,
161+
options : supportAnnotationsExclude],
162+
[configuration: "testImplementation", dependency: testDependencies.lifecycleTesting,
163+
options : supportAnnotationsExclude],
164+
[configuration: "androidTestImplementation", dependency: testDependencies.runner,
165+
options : supportAnnotationsExclude],
166+
[configuration: "androidTestImplementation", dependency: testDependencies.testRules,
167+
options : supportAnnotationsExclude],
168+
[configuration: "implementation", dependency: testDependencies.espressoIdling,
169+
options : supportAnnotationsExclude],
170+
[configuration: "androidTestImplementation", dependency: testDependencies.junitExt,
171+
options : supportAnnotationsExclude],
172+
[configuration: "androidTestImplementation", dependency: testDependencies.espressoIntent,
173+
options : supportAnnotationsExclude],
174+
[configuration: "androidTestImplementation", dependency: testDependencies.espressoWeb,
175+
options : supportAnnotationsExclude],
176+
[configuration: "testImplementation", dependency: testDependencies.truth,
177+
options : supportAnnotationsExclude],
178+
[configuration: "androidTestImplementation", dependency: testDependencies.mockWebServer,
179+
options : supportAnnotationsExclude],
180+
[configuration: "testImplementation", dependency: testDependencies.koinTest,
181+
options : supportAnnotationsExclude],
182+
[configuration: "testImplementation", dependency: testDependencies.mockTest,
183+
options : supportAnnotationsExclude],
184+
[configuration: "testImplementation", dependency: testDependencies.mockitoKotlin,
185+
options : supportAnnotationsExclude],
186+
[configuration: "testImplementation", dependency: testDependencies.testing,
187+
options : supportAnnotationsExclude],
188+
[configuration: "testImplementation", dependency: testDependencies.mockitoCore,
189+
options : supportAnnotationsExclude],
190+
]
191+
192+
appModuleDependencies = [
193+
194+
// // Modules
195+
// [configuration: "compile", dependency: project(modules.data)],
196+
// [configuration: "compile", dependency: project(modules.domain)],
197+
]
66198
}

0 commit comments

Comments
 (0)