반응형
이전에 샘플 프로젝트하면서 작성했던 프로젝트가 빌드 오류가 난다!
# AppApplication_HiltComponents.SingletonC
# hilt cannot access DefaultActivityViewModelFactory
- 클래스에 @HiltViewModel 주석 추가한다.
- 생성자의 @ViewModelInject 주석을 @Inject로 교체한다.
- SavedStateHandle 생성자 매개변수에서 @Assisted를 제거한다.
- build.gradle 파일에서 이전 androidx.hilt:hilt-lifecycle-viewmodel 종속성을 제거한다.
Dependency 수정
- AndroidX.Hilt 부분 제거 (참고로 버전은 1.0.0-alpha02 이었음)
- 구글 hilt 버전 2.42로 변경 (2.28.3-alpha 이었음)
- 코틀린버전 1.5.0으로 변경 (1.4.20 이었음)
수정전 ViewModel
class PhotoViewModel @ViewModelInject constructor(
@ApplicationContext private val context: Context
) :
수정후 ViewModel
@HiltViewModel
class PhotoViewModel @Inject constructor(
@ApplicationContext private val context: Context
) :
수정전 Module
@Module
@InstallIn(ActivityRetainedComponent::class)
class UseCaseModule {
@Provides
@ActivityRetainedScoped
fun provideGetMediaUseCase(
@Named("GalleryRepositoryImpl") galleryRepository: GalleryRepository
): GetMediaUseCase {
return GetMediaUseCase(galleryRepository)
}
}
수정한 Module
@Module
@InstallIn(SingletonComponent::class)
class UseCaseModule {
@Provides
@Reusable
fun provideGetMediaUseCase(
galleryRepository: GalleryRepository
): GetMediaUseCase {
return GetMediaUseCase(galleryRepository)
}
}
hilt가 이전버전으로 작성되어 생긴 문제 같다.
참조 :
반응형
'안드로이드 > 에러' 카테고리의 다른 글
GoogleCloud Speech (STT)에러 (0) | 2022.11.24 |
---|---|
SimpleCall (카카오엔터 SDK) & STT문제 (5) | 2022.11.22 |
[Android] webview onReceivedSslError (0) | 2022.10.27 |
android 10 파일 권한시 open failed: EACCES (Permission denied) (0) | 2022.10.27 |
Android 8.0(오레오) 투명모드 Activity에 screenOrientation값 portrait 에러 (0) | 2022.10.27 |