2014-01-05 3 views
9

대거를 내 애플리케이션에 통합하려고합니다. 그리고 나는 문제를 만났다. 건설을 그래프로 관련대거 - 클래스에 주사 가능한 멤버가 없습니다.

모든 것이 Android Activity Graphs을처럼 꽤 많이 구현 ... 내가 다른 비슷한 답변을 조사하려고

java.lang.IllegalStateException: Errors creating object graph: 
    com.app.NavigationController has no injectable members. Do you want to add an injectable constructor? required by class com.app.fragments.LoginFragment 

,하지만 아무것도 지금까지 저를 도왔 : 나는 런타임에이 오류를 받고 있어요 예.

나는 두 개의 모듈 ActivityModuleApplicationModule을 가지고 있습니다. 내가 잘못 뭐하는 거지

@Module(
     includes = ApplicationModule.class, 
     injects = { 
       MainActivity.class, 
       LoginFragment.class 
     } 
) 
public class ActivityModule { 

    private BaseActivity activity; 

    public ActivityModule(BaseActivity activity) { 
     this.activity = activity; 
    } 

    @Provides 
    @Singleton 
    NavigationController provideNavigation() { 
     return new NavigationController(activity); 
    } 
} 

그리고 다른

@Module(
    injects = { 
      MainActivity.class, 
      LoginFragment.class}, 
    complete = false 
) 
public class ApplicationModule { 

    private Context context; 

    public ApplicationModule(Context context) { 
     this.context = context; 
    } 

    @Provides 
    @Singleton 
    ApiService provideApiService() { 
     .... 
     return restAdapter.create(ApiService.class); 
    } 
} 

?

UPDATE :
추가 자세한 내용은 :

조각 :

public class LoginFragment extends BaseFragment { 

    //... 

    @Inject 
    NavigationController navigation; 

    //... 

네비게이션 컨트롤러 :

public class NavigationController { 

//... 

public NavigationController(BaseActivity activity) { 
    this.activity = activity; 
} 

//... 
} 
+0

당신이'있습니까이 단검에 대답했다 @ LoginFrag에 주석이 달린 멤버를 삽입 ment'? –

+0

예. 내 질문을 업데이트했습니다. –

+0

불완전 모듈에서'injects' 섹션을 제거하면 어떻게 되나요? –

답변