简体   繁体   English

得到错误[Dagger / MissingBinding]

[英]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.

相关问题 错误:[Dagger / MissingBinding] [dagger.android.AndroidInjector.inject(T)] Dagger - error: [Dagger/MissingBinding] [dagger.android.AndroidInjector.inject(T)] Dagger 错误:尝试构建项目时出现[Dagger / MissingBinding] - error: [Dagger/MissingBinding] when trying building the project Dagger Dagger-MissingBinding] - Dagger Dagger-MissingBinding] 错误:[Dagger/MissingBinding] 错误消息没有意义 - error: [Dagger/MissingBinding] error message doesn't make sense 为什么在ViewModelProvider.Factory实现中添加@Singleton批注会导致编译错误[Dagger / MissingBinding]? - Why adding @Singleton annotation to ViewModelProvider.Factory implementation causes a compile error [Dagger/MissingBinding]? 使用Dagger获取错误并拥有基类 - Getting an error using Dagger and having a base class 匕首/缺少绑定。 如果没有@Provides 注释的方法,则无法提供输出器 - Dagger/MissingBinding. Outputter cannot be provided without an @Provides-annotated method 匕首-MissingBinding地图 <Class<? extends ViewModel> ,供应商 <ViewModel> &gt;如果没有@Provides注释的方法,则无法提供 - Dagger - MissingBinding Map<Class<? extends ViewModel>,Provider<ViewModel>> cannot be provided without an @Provides-annotated method Dagger 2:使用@Named获取同一对象的多个实例时出错 - Dagger 2 : error while getting a multiple instances of same object with @Named 没有使用匕首单身 - Not getting singletons using Dagger
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM