dagger-android-injection
dagger-android-injection copied to clipboard
How does MainActivityComponent get a MainActivity context?
How does MainActivityComponent
get a MainActivity context?
We can use @BindsInstance
method in inner Builder interface in MainActivityComponent
(Subcomponent) and specify MainActivity
(or Context) as parameter or just send MainActivity's Context in constructor of MainActvityModule.
But I can not find where in your sample app you send the MainActivity's context. Could you explain me, please?
You don't need to do it. Dagger is already doing that for your. You can directly use your MainActivity in you module.
public class MainActivityModule{
@Provides
public MainView providesMainView(MainActivity activity) {...}
}
I am getting error bellow. what is the problem. I did what you did in post.
Error:(29, 10) error: ....ui.main.MainActivityComponent.Builder cannot be provided without an @Provides-annotated method......ui.main.MainActivityComponent.Builder is injected at .......ActivityBuilder.bindMainActivity(builder)java.util.Map<java.lang.Class<? extends android.app.Activity>,javax.inject.Provider<dagger.android.AndroidInjector.Factory<? extends android.app.Activity>>> is injected atdagger.android.DispatchingAndroidInjector.