Skip to content

Commit cfb0560

Browse files
Update gradle, and dagger
1 parent 7b6486b commit cfb0560

File tree

29 files changed

+70
-250
lines changed

29 files changed

+70
-250
lines changed

app/build.gradle.kts

+11-11
Original file line numberDiff line numberDiff line change
@@ -13,16 +13,16 @@ plugins {
1313

1414
android {
1515

16-
lintOptions {
16+
lint {
1717
isCheckReleaseBuilds = false
1818
}
1919

20-
compileSdkVersion(AndroidVersion.COMPILE_SDK_VERSION)
2120

2221
defaultConfig {
2322
applicationId = AndroidVersion.APPLICATION_ID
24-
minSdkVersion(AndroidVersion.MIN_SDK_VERSION)
25-
targetSdkVersion(AndroidVersion.TARGET_SDK_VERSION)
23+
compileSdk = AndroidVersion.COMPILE_SDK_VERSION
24+
minSdk= AndroidVersion.MIN_SDK_VERSION
25+
targetSdk = AndroidVersion.TARGET_SDK_VERSION
2626
versionCode = AndroidVersion.VERSION_CODE
2727
versionName = AndroidVersion.VERSION_NAME
2828
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
@@ -103,13 +103,13 @@ android {
103103
jvmTarget = "1.8"
104104
}
105105

106-
dynamicFeatures = mutableSetOf(
107-
Modules.DynamicFeature.HOME,
108-
Modules.DynamicFeature.PROPERTY_DETAIL,
109-
Modules.DynamicFeature.DASHBOARD,
110-
Modules.DynamicFeature.NOTIFICATION,
111-
Modules.DynamicFeature.ACCOUNT
112-
)
106+
dynamicFeatures.apply {
107+
add(Modules.DynamicFeature.HOME)
108+
add(Modules.DynamicFeature.PROPERTY_DETAIL)
109+
add(Modules.DynamicFeature.DASHBOARD)
110+
add(Modules.DynamicFeature.NOTIFICATION)
111+
add(Modules.DynamicFeature.ACCOUNT)
112+
}
113113

114114
testOptions {
115115
unitTests.isIncludeAndroidResources = true

build.gradle.kts

+2-2
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ buildscript {
33

44
repositories {
55
google()
6-
jcenter()
6+
mavenCentral()
77
maven { url = uri("https://plugins.gradle.org/m2/") }
88
maven { url = uri("https://jitpack.io") }
99
}
@@ -26,7 +26,7 @@ plugins {
2626
allprojects {
2727
repositories {
2828
google()
29-
jcenter()
29+
mavenCentral()
3030
maven { url = uri("https://jitpack.io") }
3131
}
3232
}

buildSrc/src/main/java/Dependencies.kt

+3-24
Original file line numberDiff line numberDiff line change
@@ -72,29 +72,11 @@ object Deps {
7272
const val NAVIGATION_DYNAMIC =
7373
"androidx.navigation:navigation-dynamic-features-fragment:${Version.NAVIGATION_VERSION}"
7474

75-
// Dagger Core dependencies
76-
const val DAGGER = "com.google.dagger:dagger:${Version.MATERIAL_VERSION}"
77-
const val DAGGER_COMPILER = "com.google.dagger:dagger-compiler:${Version.DAGGER_VERSION}"
78-
const val DAGGER_ANNOTATION_PROCESSOR =
79-
"com.google.dagger:dagger-android-processor:${Version.DAGGER_VERSION}"
80-
8175
// Dagger Hilt
82-
const val DAGGER_HILT_ANDROID = "com.google.dagger:hilt-android:${Version.DAGGER_HILT_VERSION}"
76+
const val DAGGER_HILT_ANDROID = "com.google.dagger:hilt-android:${Version.DAGGER_VERSION}"
8377
const val DAGGER_HILT_COMPILER =
84-
"com.google.dagger:hilt-android-compiler:${Version.DAGGER_HILT_VERSION}"
85-
86-
// Dagger Hilt AndroidX
87-
const val DAGGER_HILT_VIEWMODEL =
88-
"androidx.hilt:hilt-lifecycle-viewmodel:${Version.DAGGER_HILT_ANDRIODX}"
89-
const val DAGGER_HILT_ANDROIDX_HILT_COMPILER =
90-
"androidx.hilt:hilt-compiler:${Version.DAGGER_HILT_ANDRIODX}"
78+
"com.google.dagger:hilt-android-compiler:${Version.DAGGER_VERSION}"
9179

92-
// RxJava2
93-
const val RX_JAVA2 = "io.reactivex.rxjava2:rxjava:${Version.RX_JAVA2_VERSION}"
94-
95-
// RxJava2 Android
96-
const val RX_JAVA2_ANDROID =
97-
"io.reactivex.rxjava2:rxandroid:${Version.RX_JAVA2_ANDROID_VERSION}"
9880

9981
// RxJava3
10082
const val RX_JAVA3 = "io.reactivex.rxjava3:rxjava:${Version.RX_JAVA3_VERSION}"
@@ -117,9 +99,6 @@ object Deps {
11799
const val RETROFIT_RX_JAVA3_ADAPTER =
118100
"com.squareup.retrofit2:adapter-rxjava3:${Version.RETROFIT_RXJAVA3_ADAPTER}"
119101

120-
// Retrofit change base url runtime
121-
const val RETROFIT_URL_MANAGER = "me.jessyan:retrofit-url-manager:1.4.0"
122-
123102
const val OK_HTTP3 = "com.squareup.okhttp3:okhttp:${Version.OK_HTTP3_VERSION}"
124103

125104
// Gson
@@ -154,7 +133,7 @@ object Deps {
154133

155134
// Chucker
156135
const val CHUCKER_DEBUG = "com.github.chuckerteam.chucker:library:${Version.CHUCKER_VERSION}"
157-
const val CHUCKER_RELEASE_NO_OP =
136+
const val CHUCKER_RELEASE =
158137
"com.github.chuckerteam.chucker:library-no-op:${Version.CHUCKER_VERSION}"
159138

160139
// Leak Canary

buildSrc/src/main/java/Plugins.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ object Plugins {
1212
const val CLASSPATH_KTLINT =
1313
"org.jlleitschuh.gradle:ktlint-gradle:${PluginVersion.KTLINT_VERSION}"
1414
const val CLASSPATH_DAGGER_HILT =
15-
"com.google.dagger:hilt-android-gradle-plugin:${Version.DAGGER_HILT_VERSION}"
15+
"com.google.dagger:hilt-android-gradle-plugin:${Version.DAGGER_VERSION}"
1616
const val CLASSPATH_NAV_SAFE_ARGS =
1717
"androidx.navigation:navigation-safe-args-gradle-plugin:${PluginVersion.NAV_SAFE_ARGS_VERSION}"
1818

buildSrc/src/main/java/Version.kt

+11-20
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
object PluginVersion {
2-
const val KOTLIN_VERSION = "1.4.20"
3-
const val GRADLE_VERSION = "4.1.0-rc03"
2+
const val KOTLIN_VERSION = "1.5.10"
3+
const val GRADLE_VERSION = "7.0.0"
44

55
const val NAV_SAFE_ARGS_VERSION = "2.3.0"
66
const val KTLINT_VERSION = "9.3.0"
@@ -9,7 +9,7 @@ object PluginVersion {
99

1010
object AndroidVersion {
1111
const val MIN_SDK_VERSION = 21
12-
const val COMPILE_SDK_VERSION = 29
12+
const val COMPILE_SDK_VERSION = 30
1313
const val TARGET_SDK_VERSION = COMPILE_SDK_VERSION
1414
const val VERSION_CODE = 1
1515
const val VERSION_NAME = "1.0.0"
@@ -19,29 +19,26 @@ object AndroidVersion {
1919

2020
object Version {
2121

22-
const val CORE_KTX_VERSION = "1.3.1"
22+
const val CORE_KTX_VERSION = "1.6.0"
2323
const val FRAGMENT_KTX_VERSION = "1.2.5"
2424

2525
// Appcompat
26-
const val APPCOMPAT_VERSION = "1.2.0"
26+
const val APPCOMPAT_VERSION = "1.3.1"
2727

2828
// Material
29-
const val MATERIAL_VERSION = "1.3.0-alpha02"
29+
const val MATERIAL_VERSION = "1.4.0"
3030

3131
// ConstraintLayout
32-
const val CONSTRAINT_LAYOUT_VERSION = "2.0.1"
32+
const val CONSTRAINT_LAYOUT_VERSION = "2.1.0"
3333

3434
// RecyclerView
3535
const val RECYCLER_VIEW_VERSION = "1.2.0-alpha05"
3636

37-
// CardView
38-
const val CARD_VIEW_VERSION = "1.0.0"
39-
4037
// ViewPager2
4138
const val VIEWPAGER2_VERSION = "1.1.0-alpha01"
4239

4340
//SwipeRefreshLayout
44-
const val SWIPE_REFRESH_LAYOUT_VERSION = "1.2.0-alpha01"
41+
const val SWIPE_REFRESH_LAYOUT_VERSION = "1.1.0"
4542

4643
// Architecture MVVM & LiveData
4744
const val LIFECYCLE_VERSION = "2.2.0"
@@ -65,23 +62,17 @@ object Version {
6562
const val GSON_VERSION = "2.8.4"
6663

6764
// Room
68-
const val ROOM_VERSION = "2.3.0-alpha02"
65+
const val ROOM_VERSION = "2.4.0-alpha02"
6966

7067
// Dagger
71-
const val DAGGER_VERSION = "2.28"
72-
const val DAGGER_HILT_VERSION = "2.28.1-alpha"
73-
const val DAGGER_HILT_ANDRIODX = "1.0.0-alpha02"
74-
75-
// RxJava2
76-
const val RX_JAVA2_VERSION = "2.2.19"
77-
const val RX_JAVA2_ANDROID_VERSION = "2.1.1"
68+
const val DAGGER_VERSION = "2.38.1"
7869

7970
// RxJava3
8071
const val RX_JAVA3_VERSION = "3.0.0"
8172
const val RX_JAVA3_ANDROID_VERSION = "3.0.0"
8273

8374
// Coroutines
84-
const val COROUTINES_VERSION = "1.3.7"
75+
const val COROUTINES_VERSION = "1.5.0"
8576

8677
// Glide
8778
const val GLIDE_VERSION = "4.11.0"

buildSrc/src/main/java/extension/DependencyHandlerExtension.kt

+2-12
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ fun DependencyHandler.addAppModuleDependencies() {
1313

1414
implementation(Deps.KOTLIN)
1515
implementation(Deps.ANDROIDX_CORE_KTX)
16-
implementation(Deps.ANDROIDX_FRAGMENT_KTX)
16+
// implementation(Deps.ANDROIDX_FRAGMENT_KTX)
1717

1818
// Support and Widgets
1919
implementation(Deps.APPCOMPAT)
@@ -43,9 +43,6 @@ fun DependencyHandler.addAppModuleDependencies() {
4343
// Dagger Hilt
4444
implementation(Deps.DAGGER_HILT_ANDROID)
4545
kapt(Deps.DAGGER_HILT_COMPILER)
46-
// Dagger Hilt AndroidX & ViewModel
47-
implementation(Deps.DAGGER_HILT_VIEWMODEL)
48-
kapt(Deps.DAGGER_HILT_ANDROIDX_HILT_COMPILER)
4946

5047
// RxJava
5148
implementation(Deps.RX_JAVA3)
@@ -72,8 +69,7 @@ fun DependencyHandler.addAppModuleDependencies() {
7269
implementation(Deps.RETROFIT)
7370
implementation(Deps.RETROFIT_GSON_CONVERTER)
7471
implementation(Deps.RETROFIT_RX_JAVA3_ADAPTER)
75-
// change base url runtime
76-
implementation(Deps.RETROFIT_URL_MANAGER)
72+
7773
// Gson
7874
implementation(Deps.GSON)
7975
implementation(Deps.CHUCKER_DEBUG)
@@ -117,9 +113,6 @@ fun DependencyHandler.addCoreModuleDependencies() {
117113
// Dagger Hilt
118114
implementation(Deps.DAGGER_HILT_ANDROID)
119115
kapt(Deps.DAGGER_HILT_COMPILER)
120-
// Dagger Hilt AndroidX & ViewModel
121-
implementation(Deps.DAGGER_HILT_VIEWMODEL)
122-
kapt(Deps.DAGGER_HILT_ANDROIDX_HILT_COMPILER)
123116

124117
// RxJava
125118
implementation(Deps.RX_JAVA3)
@@ -161,9 +154,6 @@ fun DependencyHandler.addBaseDynamicFeatureModuleDependencies() {
161154
// Dagger Hilt
162155
implementation(Deps.DAGGER_HILT_ANDROID)
163156
kapt(Deps.DAGGER_HILT_COMPILER)
164-
// Dagger Hilt AndroidX & ViewModel
165-
implementation(Deps.DAGGER_HILT_VIEWMODEL)
166-
kapt(Deps.DAGGER_HILT_ANDROIDX_HILT_COMPILER)
167157

168158
// RxJava
169159
implementation(Deps.RX_JAVA3)

features/account/build.gradle.kts

-7
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,6 @@ android {
1515
compileSdkVersion(AndroidVersion.COMPILE_SDK_VERSION)
1616

1717
defaultConfig {
18-
19-
applicationId = "com.smarttoolfactory.account"
20-
21-
minSdkVersion(AndroidVersion.MIN_SDK_VERSION)
22-
targetSdkVersion(AndroidVersion.TARGET_SDK_VERSION)
23-
versionCode = AndroidVersion.VERSION_CODE
24-
versionName = AndroidVersion.VERSION_NAME
2518
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
2619
}
2720

features/dashboard/build.gradle.kts

+2-8
Original file line numberDiff line numberDiff line change
@@ -13,16 +13,10 @@ plugins {
1313

1414
android {
1515

16-
compileSdkVersion(AndroidVersion.COMPILE_SDK_VERSION)
17-
1816
defaultConfig {
1917

20-
applicationId = "com.smarttoolfactory.dashboard"
21-
22-
minSdkVersion(AndroidVersion.MIN_SDK_VERSION)
23-
targetSdkVersion(AndroidVersion.TARGET_SDK_VERSION)
24-
versionCode = AndroidVersion.VERSION_CODE
25-
versionName = AndroidVersion.VERSION_NAME
18+
compileSdk = AndroidVersion.COMPILE_SDK_VERSION
19+
minSdk = AndroidVersion.MIN_SDK_VERSION
2620
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
2721
}
2822

features/dashboard/src/main/java/com/smarttoolfactory/dashboard/DashboardViewModel.kt

+5-4
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
package com.smarttoolfactory.dashboard
22

33
import android.os.Parcelable
4-
import androidx.hilt.Assisted
5-
import androidx.hilt.lifecycle.ViewModelInject
64
import androidx.lifecycle.LiveData
75
import androidx.lifecycle.MutableLiveData
86
import androidx.lifecycle.SavedStateHandle
@@ -17,17 +15,20 @@ import com.smarttoolfactory.dashboard.adapter.model.PropertyListModel
1715
import com.smarttoolfactory.dashboard.adapter.model.RecommendedSectionModel
1816
import com.smarttoolfactory.domain.usecase.property.GetDashboardStatsUseCase
1917
import com.smarttoolfactory.domain.usecase.property.SetPropertyStatsUseCase
18+
import dagger.hilt.android.lifecycle.HiltViewModel
2019
import kotlinx.coroutines.CoroutineScope
2120
import kotlinx.coroutines.flow.combine
2221
import kotlinx.coroutines.flow.launchIn
2322
import kotlinx.coroutines.flow.map
2423
import kotlinx.coroutines.flow.onEach
2524
import kotlinx.coroutines.flow.onStart
25+
import javax.inject.Inject
2626

2727
typealias CombinedData = ViewState<Array<Any?>>
2828

29-
class DashboardViewModel @ViewModelInject constructor(
30-
@Assisted private val savedStateHandle: SavedStateHandle,
29+
@HiltViewModel
30+
class DashboardViewModel @Inject constructor(
31+
private val savedStateHandle: SavedStateHandle,
3132
private val coroutineScope: CoroutineScope,
3233
private val dashboardStatsUseCase: GetDashboardStatsUseCase,
3334
private val setPropertyStatsUseCase: SetPropertyStatsUseCase

features/home/build.gradle.kts

-7
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,6 @@ android {
1616
compileSdkVersion(AndroidVersion.COMPILE_SDK_VERSION)
1717

1818
defaultConfig {
19-
20-
applicationId = "com.smarttoolfactory.home"
21-
22-
minSdkVersion(AndroidVersion.MIN_SDK_VERSION)
23-
targetSdkVersion(AndroidVersion.TARGET_SDK_VERSION)
24-
versionCode = AndroidVersion.VERSION_CODE
25-
versionName = AndroidVersion.VERSION_NAME
2619
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
2720
}
2821

features/home/src/main/java/com/smarttoolfactory/home/propertylist/flow/PropertyListViewModel.kt

+4-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package com.smarttoolfactory.home.propertylist.flow
22

3-
import androidx.hilt.lifecycle.ViewModelInject
43
import androidx.lifecycle.LiveData
54
import androidx.lifecycle.MutableLiveData
65
import com.smarttoolfactory.core.util.Event
@@ -12,6 +11,7 @@ import com.smarttoolfactory.domain.model.PropertyItem
1211
import com.smarttoolfactory.domain.usecase.property.GetPropertiesUseCaseFlow
1312
import com.smarttoolfactory.domain.usecase.property.SetPropertyStatsUseCase
1413
import com.smarttoolfactory.home.propertylist.AbstractPropertyListVM
14+
import dagger.hilt.android.lifecycle.HiltViewModel
1515
import kotlinx.coroutines.CoroutineScope
1616
import kotlinx.coroutines.flow.Flow
1717
import kotlinx.coroutines.flow.catch
@@ -20,8 +20,10 @@ import kotlinx.coroutines.flow.launchIn
2020
import kotlinx.coroutines.flow.map
2121
import kotlinx.coroutines.flow.onEach
2222
import kotlinx.coroutines.flow.onStart
23+
import javax.inject.Inject
2324

24-
class PropertyListViewModel @ViewModelInject constructor(
25+
@HiltViewModel
26+
class PropertyListViewModel @Inject constructor(
2527
private val coroutineScope: CoroutineScope,
2628
private val getPropertiesUseCase: GetPropertiesUseCaseFlow,
2729
private val setPropertyStatsUseCase: SetPropertyStatsUseCase

features/home/src/main/java/com/smarttoolfactory/home/propertylist/paged/PagedPropertyListViewModel.kt

+4-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package com.smarttoolfactory.home.propertylist.paged
22

3-
import androidx.hilt.lifecycle.ViewModelInject
43
import androidx.lifecycle.LiveData
54
import androidx.lifecycle.MutableLiveData
65
import com.smarttoolfactory.core.util.Event
@@ -12,6 +11,7 @@ import com.smarttoolfactory.domain.model.PropertyItem
1211
import com.smarttoolfactory.domain.usecase.property.GetPropertiesUseCasePaged
1312
import com.smarttoolfactory.domain.usecase.property.SetPropertyStatsUseCase
1413
import com.smarttoolfactory.home.propertylist.AbstractPropertyListVM
14+
import dagger.hilt.android.lifecycle.HiltViewModel
1515
import kotlinx.coroutines.CoroutineScope
1616
import kotlinx.coroutines.flow.Flow
1717
import kotlinx.coroutines.flow.catch
@@ -20,8 +20,10 @@ import kotlinx.coroutines.flow.launchIn
2020
import kotlinx.coroutines.flow.map
2121
import kotlinx.coroutines.flow.onEach
2222
import kotlinx.coroutines.flow.onStart
23+
import javax.inject.Inject
2324

24-
class PagedPropertyListViewModel @ViewModelInject constructor(
25+
@HiltViewModel
26+
class PagedPropertyListViewModel @Inject constructor(
2527
private val coroutineScope: CoroutineScope,
2628
private val getPropertiesUseCase: GetPropertiesUseCasePaged,
2729
private val setPropertyStatsUseCase: SetPropertyStatsUseCase

0 commit comments

Comments
 (0)