I have an abstract AccountRequiredActivity that looks like this (and works fine):
public abstract class AccountRequiredActivity extends LifecycleActivity {
I solved the problem by overriding AndroidInjector's inject() method:
@Override
public AndroidInjector activityInjector() {
return new AndroidInjector() {
@Override
public void inject(Activity instance) {
AccountViewModel viewModel = mock( AccountViewModel.class );
if(instance instanceof TestHomeActivity) {
((TestHomeActivity) instance).viewModelFactory = ViewModelUtil.createFor( viewModel );
}
}
};
}