应用程序未实现dagger.android.HasDispatchingActivityInjector

时间:2017-07-19 09:36:24

标签: android kotlin dagger-2

我有一个Application的子类,我符合HasDispatchingActivityInjector,但是当我尝试运行我的应用程序时它会崩溃,说:

Unable to start activity ComponentInfo{com.test.testing/com.test.testing.ui.main.MainActivity}: java.lang.RuntimeException: android.app.Application does not implement dagger.android.HasDispatchingActivityInjector

这是我的Application子类:

class MyApplication : Application(), HasDispatchingActivityInjector {

@Inject
lateinit var dispatchingAndroidInjector: DispatchingAndroidInjector<Activity>

override fun onCreate() {
    super.onCreate()

    DaggerAppComponent.create().inject(this)
}

override fun activityInjector(): DispatchingAndroidInjector<Activity> {
    return dispatchingAndroidInjector
}

之前是否有其他人遇到此错误?

由于

2 个答案:

答案 0 :(得分:52)

因为我没有将带有我的Application子类值的android:name键添加到我的清单文件中。

答案 1 :(得分:1)

在清单中的application标记下添加android:name=".MyApplication"。 将“ MyApplication”更改为您的应用程序类的名称