@对扩展Cordova活动的活动贡献Android

@对扩展Cordova活动的活动贡献Android,android,dagger-2,Android,Dagger 2,根据Dagger的说法,我可以在具体的Android框架类型上使用ContributesAndroidInjector。我将无法扩展DaggerActivity,因为我有一个混合应用程序,在我的情况下,我通过扩展CordovaActivity来使用我的活动。在这些场景中应该采用什么方法 我是否应该回到2.10之前的方法,在活动的onCreate()上注册Dagger要注入的活动,如下所示 通过这样做,我必须重写我的应用程序类以返回appComponent,这再次违背了DI的目的 您能否为我提供一

根据Dagger的说法,我可以在具体的Android框架类型上使用ContributesAndroidInjector。我将无法扩展DaggerActivity,因为我有一个混合应用程序,在我的情况下,我通过扩展CordovaActivity来使用我的活动。在这些场景中应该采用什么方法

我是否应该回到2.10之前的方法,在活动的
onCreate()
上注册Dagger要注入的活动,如下所示

通过这样做,我必须重写我的应用程序类以返回appComponent,这再次违背了DI的目的


您能否为我提供一些正确的途径来处理此场景。

这再次违背了DI的目的。whoI说,“然而,这种模式打破了依赖注入的一个核心原则:一个类不应该知道它是如何被注入的。”没有必要扩展
DaggerActivity
。看看它的源代码。它实现了一个接口并调用
AndroidInjection.injection(this)
,这两个功能您也可以自己完成。
@Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    ((App)getApplication())
        .getAppComponent()
        .inject(this);
  }