当我使用RoboGuice时,我能够通过构造函数将上下文注入(inject)到我的类中,并且RoboGuice会选择合适的上下文(在Activity中注入(inject)将具有Activity上下文,在Application中注入(inject)将具有当前应用程序上下文,在fragment将具有fragment的Activity上下文等...)。Dagger有类似的方法吗?publicclassThing{@InjectpublicclassThing(Contextcontext){//ifi'minjectedinanActivity,Ishouldbethecurrentacti
我在我的Android项目中使用Dagger2,但在调试它时遇到了问题。我知道编译失败是因为我的dagger2设置(以前有过)中的错误,但几乎不可能找到它,因为我没有收到正确的错误消息告诉我问题出在哪里。我得到的只是显示注释处理失败的消息。沿着:Error:Executionfailedfortask':app:compileDebugJavaWithJavac'.>Compilationfailed;seethecompilererroroutputfordetails.Error:(14,28)error:cannotfindsymbolclassBRError:(17,40)er
在我的Android应用程序中,我设置了Volley。Robolectric.application已初始化,所有其他测试运行顺利。尝试获取模拟的HTTP响应时出现此错误。这是我的测试:@RunWith(MyRobolectricTestRunner.class)publicclassApiTests{@InjectprotectedApiapi;@BeforepublicvoidsetUp(){ObjectGraph.create(newAndroidModule(Robolectric.application),newTestApplicationModule()).inject(
"Alongtimeagoinagalaxyfar,faraway...."好吧,长话短说-我决定试一试AndroidStudio3.0Preview(Canary2),但我无法使用让它与Dagger2一起工作annotationProcessor而不是android-apt。我收到的错误消息很容易消化:Error:(59,24)error:cannotfindsymbolvariableDaggerAppComponent我已经阅读了文档(我猜那里没什么特别的):https://developer.android.com/studio/preview/features/new-and
我正在尝试在具有多个Android库模块的Android项目中使用Dagger2,并且我希望能够提供类的单例范围实例来自这些模块。目前,我能够在库模块中定义组件,并在主应用程序模块中注入(inject)实例。我无法做的是提供一个实例作为单例。项目结构如下:Project├──app├──library1···└──libraryN在库中,我以这种方式定义组件:@ComponentpublicinterfaceLibraryComponent{//ProvideinstancesofMyManagertoMainComponent:MyManagergetMyManager();}MyM
我有一个抽象的AccountRequiredActivity,看起来像这样(并且工作正常):publicabstractclassAccountRequiredActivityextendsLifecycleActivity{@InjectViewModelProvider.FactoryviewModelFactory;privateAccountViewModelaccountViewModel;publicabstractvoiddoOnCreate(BundlesavedInstanceState);publicabstractvoiddoOnResume();@Overrid
关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭5年前。Improvethisquestion如何在我的Android项目中使用Dagger,使用它的主要目的是什么?我在谷歌上搜索了它,但我不清楚。所以如果可能的话,请给我最好的解决方案和一个例子。
开始探索Espresso2.0,但似乎遇到了问题。我无法让测试成功地针对任何包含Dagger的项目运行。当我运行测试时,我得到以下异常(最后是整个堆栈跟踪):java.lang.NoClassDefFoundError:com/pdt/daggerexample/model/DaggerExampleAppModule$$ModuleAdapter$ProvideMySingletonProvidesAdapter应用程序在未从AndroidInstrumentationTest运行时运行。这里有一些相关的文件,我也已经将项目上传到github以便更快地checkout/复制https
我在Android中使用Dagger进行依赖注入(inject),使用Eclipse进行构建。我克隆了android-activity-graphs用作示例。我已经根据来自https://github.com/square/dagger/issues/126的staxgr设置了我的环境这些是我的库:dagger-1.1.0.jar、dagger-compiler-1.1.0.jar和javax.inject.jar最后,我将Eclipse中的源文件夹更改为指向src/main/java(而不仅仅是src/),以便Eclipse检测相关的通过包关键字文件。项目构建,但在运行时立即失败
嘿,我正在使用Dagger2、Retrofit和OkHttp,我面临着依赖循环问题。当提供OkHttp时:@Provides@ApplicationScopeOkHttpClientprovideOkHttpClient(TokenAuthenticatorauth,Dispatcherdispatcher){returnnewOkHttpClient.Builder().connectTimeout(Constants.CONNECT_TIMEOUT,TimeUnit.SECONDS).readTimeout(Constants.READ_TIMEOUT,TimeUnit.SECON