I am creating multi module android project using java. I got Null
when I inject a class.
Followings are my codes.
SignupComponent.class
@FeatureScope
@Subcomponent(modules = SignupModule.class)
public interface SignupComponent {
@Subcomponent.Factory
interface Factory{
SignupComponent create();
}
void inject(Activity_Signup activity_signup);
SignupModule.class
@Module
public class SignupModule {
@FeatureScope
@Provides
public SignupContract.Presenter providePresenter(){
return new SignupPresenter();
}
}
Activity_Signup.class
SignupComponent signupComponent = ((SignupComponentProvider) getApplicationContext())
.provideSignupComponent();
//Inject the view
signupComponent.inject(this);
SignupPresenter.class
public class SignupPresenter implements SignupContract.Presenter {
// this injection return Null
@Inject
public SignupUseCase signupUseCase;
}
SignupUseCase.class
public class SignupUseCase {
@Inject
public SignupUseCase(){}
...
}
Why am I getting NPE
?
EDIT
SignupModule.class
@Module
public class SignupModule {
@FeatureScope
@Provides
public SignupContract.Presenter providePresenter(){
return new SignupPresenter();
}
@FeatureScope
@Provides
public SignupUseCase provideUseCase(){
return new SignupUseCase();
}
}