Skip to content

Instantly share code, notes, and snippets.

@mitchtabian
Created September 16, 2019 23:27
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mitchtabian/817b52ec58a9106d5ce75547269e8af5 to your computer and use it in GitHub Desktop.
Save mitchtabian/817b52ec58a9106d5ce75547269e8af5 to your computer and use it in GitHub Desktop.
Initial Dagger Setup
package com.codingwithmitch.openapi.di
import android.app.Application
import com.codingwithmitch.openapi.BaseApplication
import dagger.BindsInstance
import dagger.Component
import dagger.android.AndroidInjectionModule
import dagger.android.AndroidInjector
import javax.inject.Singleton
@Singleton
@Component(
modules = [
AndroidInjectionModule::class
]
)
interface AppComponent : AndroidInjector<BaseApplication>{
@Component.Builder
interface Builder{
@BindsInstance
fun application(application: Application): Builder
fun build(): AppComponent
}
}
package com.codingwithmitch.openapi
import com.codingwithmitch.openapi.di.DaggerAppComponent
import dagger.android.AndroidInjector
import dagger.android.support.DaggerApplication
class BaseApplication: DaggerApplication() {
override fun applicationInjector(): AndroidInjector<out DaggerApplication> {
return DaggerAppComponent.builder().application(this).build()
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment