有没有一种方法可以使用Dagger2将对象注入接口



在我的活动类中,我可以使用注入ViewModel

@Inject
GameViewModel gameViewModel;

而且效果很好。问题是,我想在接口中使用对象:

public interface SharedData {
@Inject
GameViewModel gameViewModel;
default void createNewUser(User authenticatedUser) {
gameViewModel.userLiveData.observe(this, user -> {
Log.d("TAG", user.name);
});
}
}

这可能吗?因为我得到:

变量gameViewModel可能尚未初始化

dagger不应该这么做吗?

不能在接口中使用字段。若要使用字段,应该使用类或抽象类。

相关内容

  • 没有找到相关文章

最新更新