jjzjj

android - Dagger 2注入(inject)方式

我正在玩弄Dagger2.我有以下模块:@ModulepublicclassGameSetupModule{@Provides@SingletonGameSetupprovideGameSetup(){returnnewGameSetup();}}和相应的组件:@Singleton@Component(modules={GameSetupModule.class})publicinterfaceGameSetupComponent{GameSetupprovideGameSetup();voidinject(SetupActivityactivity);//voidinject(Fra

android - Java 的 Dagger 中的 addTo 和 includes 有什么区别?

我不确定有什么区别?我什么时候应该使用哪个?http://square.github.io/dagger/javadoc/index.html 最佳答案 includes表示当前模块由哪些模块组成。例如,它对于静态聚合所有模块很有用:@Module(includes={AndroidModule.class,NetworkModule.class,StorageModule.class})publicclassRootModule(){}//otherfileobjectGraph=ObjectGraph.create(newRoo

android - Dagger 2 错误 : dependency “cannot be provided without an @Inject constructor”

我正在尝试在我的Android项目中使用Dagger2。对于初学者,我想使用两个组件分别负责注入(inject)应用程序范围和Activity范围的依赖项。作为基本引用,除其他外,我使用了thisanswer.因此有两种不同的方式来设置组件之间的关系:使用@Subcomponent注释和使用dependencies参数。如果我选择第一个,我的AppContextComponent工作正常。但是,一旦我尝试从ActivityContextComponent注入(inject)依赖项,我就会收到此构建时错误:Error:com.example.ui.activity.MainActivit

android - 用 Dagger 2 和 RxJava2 包装 SharedPreferences

我是否需要包装AndroidSharedPreferences类?如果是,能否请您提供一个简单的工作示例?我知道如何使用SharedPreferences,但是当涉及到包装它并为它提供Dagger2和RxJava2时,我感到很困惑。 最佳答案 我通常只是使用一个名为LocalStorage或类似的接口(interface)来包装它。然后将Context注入(inject)到实现中,并像往常一样实现您的SharedPreferences。如果您想使用Rx,只需确保您的接口(interface)方法返回Observables。然后,每当

dagger2汇编问题

我正在尝试使用Dagger2学习依赖注入。我创建了几个自定义范围和预选赛。我创建了一个应用程序组件,我想在其中注入某些全局依赖项,并且还创建了一个活动组件,该活动将根据活动上下文返回某些实例。现在,当我尝试在活动中注入全局实例时,我会发现错误如下:e:/home/arifur/source_code/me/myprojects/Learn/studio/Android/kotlin/FirebaseChat/app/build/tmp/kapt3/stubs/debug/com/example/arifur/firebasechatkotlin/dependecies/component/Ac

android - 如何使用 Google Android Gradle Plugin 编译 AndroidAnnotations?

我用googleandroidgradle插件和android注释编译了一个android项目,好像是java编译源码在android注解生成一些源文件之前。这有什么问题吗?谢谢!我编译:gitclonegit@github.com:sinojelly/androidannotations-dagger-example.git-bgoogle-android-gradle-pluginbuild.gradle是:buildscript{repositories{mavenLocal()mavenCentral()}dependencies{classpath'com.android.t

java - Dagger 2 不初始化变量

现在我正尝试在我的项目中实现Dagger,但我遇到了一个问题。在应用程序组件中初始化的变量未在我的Activity中初始化。这是我的代码。应用:publicclassMyApplicationextendsApplication{privateApplicationComponentapplicationComponent;@InjectpublicContextcontext;@OverridepublicvoidonCreate(){super.onCreate();applicationComponent=DaggerApplicationComponent.builder().

java - 坚持使用 Dagger 进行 Activity 的演示者

当您将演示者注入(inject)到Activity范围轮换时,如何让演示者在Activity中保持Activity状态?我的理解是演示者和Activity被销毁,每次都会创建一个新的演示者和Activity。有没有办法在重新创建Activity时让Presenter保持Activity状态? 最佳答案 是的,前提是我们讨论的是配置更改(例如轮换)。你可以重写FragmentActivity的方法有趣onRetainCustomNonConfigurationInstance():Any-保存您的演示者轮换。在onCreate()期间

android - Dagger 2 Android 应用程序组件缺少注入(inject)方法

我用新发布的Dagger2.10和dagger.android包尝试了一个小的Android项目。只有MainApplication类应该被Dagger注入(inject),没有其他任何依赖:构建.gradledependencies{...//Daggercompile'com.google.dagger:dagger:2.10'compile'com.google.dagger:dagger-android:2.10'annotationProcessor'com.google.dagger:dagger-compiler:2.10'//Fixforincompatiblelibr

android - 如何模拟 Dagger Activity 对象图?

我在Android应用程序中使用Dagger来提供应用程序和Activity范围图。我正在使用Robolectric进行单元测试。我知道我可以为Robolectric提供一个替代的Application类,该类配置了一个应用程序对象图,用模拟覆盖真实的应用程序对象图。但是我对如何对Activity对象图做同样的事情感到困惑,因为Activity对象图的标准模式是让Activity本身实例化他们需要的特定于Activity的Dagger模块。任何建议将不胜感激。 最佳答案 请查看我的项目-https://github.com/emar