android.content.Context不能在没有@ providers注释方法的情况下提供



我得到以下错误,柄更新到2.32-alpha后。

即使在提供了相关元素之后,它仍然在抱怨它。我很确定这与作用域有关,但无法整理,日志如下,

^C:UsersVikramSinghDesktopworkMinemobiquityappbuildgeneratedsourcekaptdebugrepratormobiquityMobiQuityApp_HiltComponents.java:145: error: [Dagger/MissingBinding] @dagger.hilt.android.qualifiers.ActivityContext android.content.Context cannot be provided without an @Provides-annotated method.
public abstract static class SingletonC implements HiltWrapper_ActivityRetainedComponentManager_ActivityRetainedComponentBuilderEntryPoint,
^
A binding with matching key exists in component: reprator.mobiquity.MobiQuityApp_HiltComponents.ActivityC
@dagger.hilt.android.qualifiers.ActivityContext android.content.Context is injected at
reprator.mobiquity.addcity.di.AddCityModule.provideGeoCoder(context)
android.location.Geocoder is injected at
reprator.mobiquity.addcity.di.AddCityModule.provideReverseGeoCoding(geoCoder)
reprator.mobiquity.addcity.ReverseGeoCoding is injected at
reprator.mobiquity.addcity.AddLocationViewModal(�, reverseGeoCoding, �)
reprator.mobiquity.addcity.AddLocationViewModal is injected at
reprator.mobiquity.addcity.AddLocationViewModal_HiltModules.BindsModule.binds(arg0)
@dagger.hilt.android.internal.lifecycle.HiltViewModelMap java.util.Map<java.lang.String,javax.inject.Provider<androidx.lifecycle.ViewModel>> is requested at
dagger.hilt.android.internal.lifecycle.HiltViewModelFactory.ViewModelFactoriesEntryPoint.getHiltViewModelMap() [reprator.mobiquity.MobiQuityApp_HiltComponents.SingletonC ? reprator.mobiquity.MobiQuityApp_HiltComponents.ActivityRetainedC ? reprator.mobiquity.MobiQuityApp_HiltComponents.ViewModelC][WARN] Incremental annotation processing requested, but support is disabled because the following processors are not incremental: androidx.room.RoomProcessor (DYNAMIC).

存储库:https://github.com/TheReprator/mobiquity/tree/hilt_scope_issue

问候,Vikram辛格

我认为你应该尝试用@ActivityScoped@ActivityRetainedScoped注释提供方法,另一件事我在你的代码中注意到关于AddLocationViewModal,我认为你应该用@HiltViewModel注释它,并使其像下面的代码:

@HiltViewModel
class AddLocationViewModal @Inject constructor(
private val savedStateHandle: SavedStateHandle,
private val appCoroutineDispatchers: AppCoroutineDispatchers,
private val reverseGeoCoding: ReverseGeoCoding,
private val locationUseCase: LocationUseCase
) : ViewModel() {...}