[英]Getting the error [Dagger/MissingBinding]
I have been following the GithubBrowserSample from Google as my reference. 我一直关注Google的GithubBrowserSample作为我的参考。
I have just put the final touches to dagger by implmenting into my MainActivity and now receive the following error. 我刚刚接触到了我的MainActivity,现在收到了以下错误。 Can't seem to find an awful lot on it other than include what I already have in there. 似乎除了包括我已经拥有的内容之外,似乎找不到很多东西。
error: [Dagger/MissingBinding] [dagger.android.AndroidInjector.inject(T)] java.util.Map<java.lang.String,javax.inject.Provider<dagger.android.AndroidInjector.Factory<? extends androidx.fragment.app.Fragment>>> cannot be provided without an @Provides-annotated method.
java.util.Map<java.lang.String,javax.inject.Provider<dagger.android.AndroidInjector.Factory<? extends androidx.fragment.app.Fragment>>> is injected at
dagger.android.DispatchingAndroidInjector.<init>(…, injectorFactoriesWithStringKeys)
dagger.android.DispatchingAndroidInjector<androidx.fragment.app.Fragment> is injected at
com.crosscare.MainActivity.dispatchingAndroidInjector
com.crosscare.MainActivity is injected at
dagger.android.AndroidInjector.inject(T)
component path: com.crosscare.di.AppComponent ? com.crosscare.di.MainActivityModule_ContributeMainActivity.MainActivitySubcomponent
MainActivity: 主要活动:
public class MainActivity extends AppCompatActivity implements HasSupportFragmentInjector {
@Inject
DispatchingAndroidInjector<Fragment> dispatchingAndroidInjector;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public DispatchingAndroidInjector<Fragment> supportFragmentInjector() {
return dispatchingAndroidInjector;
}
}
AppComponent: AppComponent:
@Singleton
@Component(modules = {
AndroidInjectionModule.class,
AppModule.class,
MainActivityModule.class
})
public interface AppComponent {
@Component.Builder
interface Builder {
@BindsInstance Builder application(Application application);
AppComponent build();
}
void inject(CrosscareApp crosscareApp);
}
Any suggestions would be greatly appreciated. 任何建议将不胜感激。
Found the issue after more carefully googling. 经过更仔细的谷歌搜索后发现了这个问题。
Seems for androidx I need to use AndroidSupportInjectionModule instead of AndroidInjectionModule 对于androidx似乎我需要使用AndroidSupportInjectionModule而不是AndroidInjectionModule
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.