hilt - @HiltViewModel
2021. 1. 29. 17:09ㆍAndroid/DI(dependency injection)
Hilt로 ViewModel 객체 삽입
@ViewModelInject(Deprecated) -> @HiltViewModel 변경됨
HiltView Model로 주석이 달린 View Model은 "dagger.hilt.android.lifecycle.dagger.hilt.android.lifecycle.HiltViewModelFactory"
의해 생성 됩니다.
기본적으로 Android EntryPoint로 주석이 달린 Activity 또는 Fragment에서 검색할 수 있습니다.
Inject로 주석이 달린 생성자를 포함하는 "HiltView Model"은 Dagger's Hilt에 의해 주입된 생성자 매개 변수에 종속성이 정의된다.
@HiltViewModel
public class DonutViewModel extends ViewModel {
@Inject
public DonutViewModel(SavedStateHandle handle, RecipeRepository repository) {
// ...
}
}
@AndroidEntryPoint
public class CookingActivity extends AppCompatActivity {
public void onCreate(Bundle savedInstanceState) {
DonutViewModel vm = new ViewModelProvider(this).get(DonutViewModel.class);
}
}
출처 : dagger.dev/api/latest/dagger/hilt/android/lifecycle/HiltViewModeldagger.dev/api/latest/dagger/hilt/android/lifecycle/HiltViewModel
'Android > DI(dependency injection)' 카테고리의 다른 글
hilt - @ApplicationContext, @ActivityContext, @EntryPoin (0) | 2021.01.21 |
---|---|
Hilt - @Provides, @Qualifier (0) | 2021.01.21 |
Hilt - @Inject 주석, @Module, @InstallIn, @Binds (0) | 2021.01.20 |
Hilt를 사용한 종속 항목 삽입 (0) | 2021.01.20 |
수동 종속성 삽입 (0) | 2021.01.20 |