3

I have a working Android application that uses dagger 2.21 for dependency injection. I saw that version 2.27 was available and I try to update to it.

After update of gradle dependencies there was an issue that HasActivityInjector couldn't be resolved. I changed implementation from this one


class MyApplication : ConfigApplication(), HasActivityInjector {
    @Inject
    lateinit var activityInjector: DispatchingAndroidInjector<Activity>
    override fun activityInjector(): AndroidInjector<Activity> = activityInjector
    // ....
}

To this one as suggested here


class MyApplication : ConfigApplication(), HasAndroidInjector {
    @Inject
    lateinit var androidInjector: DispatchingAndroidInjector<Any>
    override fun androidInjector(): AndroidInjector<Any> = androidInjector
    // ....
}

The problem is when I try to build my application dagger fails with the message in its generated code

error: cannot find symbol return DispatchingAndroidInjector_Factory.newDispatchingAndroidInjector( ^ symbol: method newDispatchingAndroidInjector(Map,Provider>>,Map>>) location: class DispatchingAndroidInjector_Factory

Any ideas what is still missing?

Vitalii
  • 10,091
  • 18
  • 83
  • 151

1 Answers1

2

make sure you update all of this dependencies to 2.27

kapt "com.google.dagger:dagger-compiler:$dagger"
implementation "com.google.dagger:dagger:$dagger"
kapt "com.google.dagger:dagger-android-processor:$dagger"
implementation "com.google.dagger:dagger-android-support:$dagger"