我一直在關注來自谷歌的 GithubBrowserSample 作為我的參考。我剛剛通過實施到我的 MainActivity 中對匕首進行了最后的潤色,現在收到以下錯誤。除了包含我已經擁有的內容之外,似乎無法在其中找到太多內容。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 atdagger.android.DispatchingAndroidInjector.<init>(…, injectorFactoriesWithStringKeys)dagger.android.DispatchingAndroidInjector<androidx.fragment.app.Fragment> is injected atcom.crosscare.MainActivity.dispatchingAndroidInjectorcom.crosscare.MainActivity is injected atdagger.android.AndroidInjector.inject(T)component path: com.crosscare.di.AppComponent ? com.crosscare.di.MainActivityModule_ContributeMainActivity.MainActivitySubcomponent主要活動: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; }}應用組件:@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);}任何建議將不勝感激。
1 回答

哆啦的時光機
TA貢獻1779條經驗 獲得超6個贊
經過更仔細的谷歌搜索后發現了問題。
似乎對于 androidx 我需要使用 AndroidSupportInjectionModule 而不是 AndroidInjectionModule
添加回答
舉報
0/150
提交
取消