Android Dagger2: How to create and retrieve object (Kotlin)

How to Provide and Inject

Setup Dagger 2 For Android Kotlin

Architecture Components: Activity and ViewModel

Syntax To Inject Constructor For Kotlin
Android Dagger2 Runtime Inject Parameter or Object
Android Dagger2 Inject via Fields (for non-Activity/Fragment class)
Android Dagger 2 Injection For Fragment (Kotlin)
Alternative To Dagger Static Injection Using Component Getter

Dagger inject into global/singleton object