Advertisement
Guest User

Untitled

a guest
Jul 20th, 2017
50
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.98 KB | None | 0 0
  1. compile 'com.google.dagger:dagger:2.11'
  2. kapt 'com.google.dagger:dagger-compiler:2.11'
  3. provided 'org.glassfish:javax.annotation:10.0-b28'
  4. apply plugin: 'kotlin-kapt' (top of file)
  5.  
  6. class TempClass {}
  7.  
  8. @Module
  9. class TempClassModule {
  10. @Singleton
  11. @Provides
  12. fun provideTempClass() : TempClass = TempClass()
  13. }
  14.  
  15. @Component (modules = arrayOf(TempClassModule::class))
  16. interface TempClassComponent {
  17. fun inject(mainActivity: MainActivity)
  18. }
  19.  
  20. class MyApp : Application() {
  21. companion object {
  22. lateinit var tempComponent : TempClassComponent
  23. }
  24.  
  25. override fun onCreate() {
  26. super.onCreate()
  27. prepareComponents()
  28. }
  29.  
  30. fun prepareComponents():Unit {
  31. tempComponent = DaggerTempClassComponent.builder().build()
  32. }
  33. }
  34.  
  35. class MainActivity : AppCompatActivity() {
  36.  
  37. @Inject lateinit var tempClass : TempClass
  38.  
  39. override fun onCreate(savedInstanceState: Bundle?) {
  40. super.onCreate(savedInstanceState)
  41. setContentView(R.layout.activity_main)
  42. MyApp.tempComponent.inject(this)
  43.  
  44. }
  45. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement