클린 아키텍처의 개념을 사용하는 프로젝트에서 우선 순위 작업 큐를 사용하고 있습니다. 문제는이다 : 우선 순위 작업 큐와 DI를 할 나는이 같은 BaseJob 작업 만들어야합니다클린 아키텍처의 우선 순위 작업 큐를 사용한 종속 삽입
abstract public class BaseJob extends Job {
@Retention(RetentionPolicy.SOURCE)
@IntDef({UI_HIGH, BACKGROUND})
public @interface Priority {
}
public static final int UI_HIGH = 10;
public static final int BACKGROUND = 1;
public BaseJob(Params params) {
super(params);
}
protected boolean shouldRetry(Throwable throwable) {
return true;
}
public void inject(ApplicationComponent appComponent) {
}
문제가를 그 라인 :
public void inject(ApplicationComponent appComponent) {
}
내가 어떤 ApplicationComponent에 액세스해야 프레젠테이션의 레이어에 있지만 BaseJob은 데이터 레이어에 있기 때문에 액세스 할 수 없습니다.
데이터의 레이어를 프레젠테이션에 대해 알면 깨끗한 아키텍처의 원칙을 위반하게됩니다.
아무도 내가 그 일을 할 수있는 아이디어가 있습니까?
를 보라? –
이 샘플 다음 : [link] (https://github.com/yigit/dev-summit-architecture-demo/blob/master/client/app/src/main/java/com/android/example/devsummit/archdemo) /di/module/ApplicationModule.java). 내 작업에 의존성을 주입하는 데 사용하고 있습니다. 코드를 여기에 배치 할 수 없으므로 111 행에 있습니다. – user2601142