jjzjj

dagger-2

全部标签

java - 错误 : [Dagger/MissingBinding] [dagger. android.AndroidInjector.inject(T)] Dagger

我想制作一个包含一个主要Activity和多个fragment的简单项目。在这里,我在一项Activity中有两个fragment,我想将演示者注入(inject)登录fragment,但它不起作用。我的错误在哪里?主应用程序.javapublicclassMainApplicationextendsDaggerApplication{privatestaticApplicationComponentcomponent;@OverridepublicvoidonCreate(){super.onCreate();Utils.init(this);}publicstaticApplica

Android Dagger 2 和 MVP 在注入(inject)的对象中注入(inject)

我想使用具有MVP模式的Dagger2。所以我有这种情况,每个View都有自己的Component例如MyFragment有一个这样的组件:@PerFragment@Component(dependencies=ActivityComponent.class,modules=MyFragmentModule.class)publicinterfaceMyFragmentComponent{voidinject(MyFragmentfragment);}在MyFragmentModule中,我提供了一个Presenter和一个将在MyFragment中使用的模型@Modulepublic

android - 尝试使用 Dagger 解决依赖循环

dagger-android2.16我的Dagger模块中存在依赖循环错误。我想我知道问题是什么,但不确定如何解决。这是错误信息:Foundadependencycycle:publicinterfaceLoginFragmentSubcomponentextendsAndroidInjector{presentation.login.request.LoginRequestisinjectedatmobileui.login.di.LoginActivityModule.provideLoginResponseListener(…,loginRequest)presentation.

java - @Binds 方法必须只有一个参数,其类型可分配给返回类型

我正在迁移到新的daggerandroid2.11所有设置均基于Google蓝图:MVP-Dagger。但我遇到此错误:Error:(22,57)error:@Bindsmethodsmusthaveonlyoneparameterwhosetypeisassignabletothereturntype在这一行中:@ActivityScoped@BindsabstractPresenterFactoryprovidePresenterFactory(MainPresenterpresenter);主持人:@ActivityScopedpublicclassMainPresenterex

android - 为什么注入(inject)后我的字段是 `null`?我如何注入(inject)我的对象?

ThisisaCanonicalQuestionbecausetherearealotofmisconceptionsaboutobjectinitializationwithDagger2.Ifyourquestionwasflaggedasaduplicatepleasereadthispostcarefullyandmakesuretounderstandthedifferencebetweenconstructorinjectionandfieldinjection.我尝试注入(inject)一个Context进入我的演示者,但在尝试使用它时出现NullPointerExcep

java - 使用 Dagger 2 时,我应该将库初始化移动到哪里?

我有这段代码可以初始化Calligraphy默认配置。publicclassMyApplicationextendsApplication{@OverridepublicvoidonCreate(){super.onCreate();//TheinitializationIwanttomoveCalligraphyConfig.initDefault(newCalligraphyConfig.Builder().setDefaultFontPath("fonts/MyFont.ttf").build());}}我想在我的项目中使用Dagger2,但我不完全了解我应该创建哪些类以及将这些

java - 如何使用 Dagger2 实现工厂

我正在尝试使用Dagger2实现一个工厂,但我不知道如何实现?在一个简化的例子中:publicclassFoo{publicinterfaceFactory{FoocreateNew();}privateBarbar;publicFoo(Barbar){this.bar=bar;}}我想设置一个提供Foo.Factory实例的方法@ModulepublicclassTestModule{@ProvidesBarprovideBar(){returnnewBar();}@ProvidesFoo.FactoryprovideFooFactory(){//??????}}结果应该是这样的(当

java - Dagger:在提供的 pojo 上注入(inject)字段

目前正在用dagger进行测试,我想做的是实例化并注入(inject)不同的Bar实现。如何在提供的字段中注入(inject)字段?例如:模块:@Module(injects={Main.class},complete=false,library=true)publicclassExampleTestModule{@ProvidespublicFooprovidesFoo(){returnnewFoo();}@ProvidespublicBarprovidesBar(BarImplimpl){//returnnewBarImpl();//nullreturnimpl;}}主要内容:pu

java - Android Dagger2 和 Butterknife 冲突

我学习了如何在我的android项目中使用dagger2和Butterknife,一切正常,直到我用ButterknifeBindView注释注入(inject)View,它显示这样的错误;错误:(5,57)错误:找不到符号类DaggerNetComponent这是我的DaggerNetComponent代码:publicclassAppextendsApplication{privateNetComponentmNetComponent;@OverridepublicvoidonCreate(){super.onCreate();mNetComponent=DaggerNetComp

android - 带有 Dagger 2 的 ViewModelProviders,无法掌握概念

我有这样的改造服务publicinterfaceBrandsService{@GET("listBrand")Call>getBrands();}然后我有一个存储库来从这样的api获取数据publicclassBrandsRepository{publicstaticfinalStringTAG="BrandsRepository";MutableLiveData>mutableLiveData;Retrofitretrofit;@InjectpublicBrandsRepository(Retrofitretrofit){this.retrofit=retrofit;}publicL