小编use*_*637的帖子

Dagger 2注入Android Context

我正在使用Dagger 2并使其工作,但我现在需要访问Android应用程序上下文.

我不清楚如何注入和访问上下文.我试过这样做如下:

@Module
public class MainActivityModule {    
    private final Context context;

    MainActivityModule(Context context) {
        this.context = context;
    }

@Provides @Singleton
Context provideContext() {
    return context;
}
Run Code Online (Sandbox Code Playgroud)

但是,这会导致以下异常:

java.lang.RuntimeException:无法创建应用程序:java.lang.IllegalStateException:必须设置mainActivityModule

如果我检查Dagger生成的代码,则会在此处引发此异常:

public Graph build() {  
    if (mainActivityModule == null) {
        throw new IllegalStateException("mainActivityModule must be set");
    }
    return new DaggerGraph(this);
}
Run Code Online (Sandbox Code Playgroud)

我不确定这是否是注入Context的正确方法 - 任何帮助将不胜感激.

android dependency-injection android-context dagger-2

30
推荐指数
4
解决办法
3万
查看次数

Android Studio中的AndroidJunit4.class运行器不会调用@Test方法

我已应用以下说明:https://code.google.com/p/android-test-kit/wiki/AndroidJUnitRunnerUserGuide 来设置JUnit4测试.

特别是我遵循将Junit4与ActivityInstrumentationTestCase2一起使用的步骤,但是当我在Android Studio中运行测试时,@ Test注释方法没有被执行.如果我使用'test'对方法进行前缀,那么它可以工作,但这不是我对JUnit 4测试所期望的.

有谁遇到过这个问题?

问候,

android junit4 android-studio

5
推荐指数
2
解决办法
4216
查看次数

如何使用JUnit测试显示Android日志记录输出(使用带有仿真器的本机JUnit)

我正在使用JUnit 4编写Android测试用例(这些测试不使用模拟器并且作为本机测试运行).在我的代码中,我使用SL4J进行日志记录,但是当我运行单元测试时,我无法看到任何日志记录输出.例如以下语句:

  private static final Logger logger = LoggerFactory.getLogger(AClass.class);
  logger.warn("log output not visible in unit test");
Run Code Online (Sandbox Code Playgroud)

关于是否可以在单元测试中访问记录器输出的任何想法?

问候,

junit android unit-testing slf4j

5
推荐指数
1
解决办法
3597
查看次数

在 Scala 中 - 如何获得星期几?

假设我的日期格式是 21/05/2017,那么输出将是 SUN。

我怎样才能得到给定日期的那一天?

scala

1
推荐指数
1
解决办法
9205
查看次数