title: Cannot create instance of viewmodel after using Hilt in Android
body: <p>Here is my <code>AllFilesListViewModel</code> class.</p>
  
  <pre><code>class AllFilesListViewModel @ViewModelInject constructor(
      private val pdfItemRepository: PdfItemRepository):ViewModel() {
  
  }
  </code></pre>
  
  <p>Here is <code>PdfItemRepository</code> class.</p>
  
  <pre><code>@Singleton
  class PdfItemRepository @Inject constructor(private val pdfItemDao: PdfItemDao){
  
  }
  </code></pre>
  
  <p>For <code>pdfItemDao</code>. I created a module named <code>DatabaseModule</code>. Below is the code - </p>
  
  <pre><code>@Module
  @InstallIn(ApplicationComponent::class)
  object DatabaseModule {
  
      @Provides
      fun provideDatabase(@ApplicationContext context: Context):AppDatabase{
          return AppDatabase.getDataBase(context)
      }
  
      @Provides
      fun providePdfItemDao(database:AppDatabase):PdfItemDao{
          return database.pdfItemDao()
      }
  }
  </code></pre>
  
  <p>Here is the fragment class <code>AllFilesFragment.kt</code> where I am using viewModel.</p>
  
  <pre><code>@AndroidEntryPoint
  class AllFilesFragment:Fragment(){
  
      private lateinit var binding:AllFilesFragmentBinding
      private val viewModel by viewModels&lt;AllFilesListViewModel&gt;()
  
  
      override fun onCreateView(
          inflater: LayoutInflater,
          container: ViewGroup?,
          savedInstanceState: Bundle?
      ): View? {
          binding = AllFilesFragmentBinding.inflate(inflater,container,false)
          context?: return binding.root
          initThings()
          subscribeUi()
          return binding.root
      }
  }
  </code></pre>
  
  <p>Here is <code>logcat</code> file. </p>
  
  <pre><code>06-19 19:22:20.203 23753-23753/com.emptysheet.pdfreader_autoscroll E/AndroidRuntime: FATAL EXCEPTION: main
      Process: com.emptysheet.pdfreader_autoscroll, PID: 23753
      java.lang.RuntimeException: Cannot create an instance of class com.emptysheet.pdfreader_autoscroll.homeScreen.viewModel.AllFilesListViewModel
          at androidx.lifecycle.ViewModelProvider$NewInstanceFactory.create(ViewModelProvider.java:221)
          at androidx.lifecycle.ViewModelProvider$AndroidViewModelFactory.create(ViewModelProvider.java:278)
          at androidx.lifecycle.SavedStateViewModelFactory.create(SavedStateViewModelFactory.java:106)
          at androidx.hilt.lifecycle.HiltViewModelFactory.create(HiltViewModelFactory.java:69)
          at androidx.lifecycle.AbstractSavedStateViewModelFactory.create(AbstractSavedStateViewModelFactory.java:69)
          at androidx.lifecycle.ViewModelProvider.get(ViewModelProvider.java:185)
          at androidx.lifecycle.ViewModelProvider.get(ViewModelProvider.java:150)
          at androidx.lifecycle.ViewModelLazy.getValue(ViewModelProvider.kt:54)
          at androidx.lifecycle.ViewModelLazy.getValue(ViewModelProvider.kt:41)
          at com.emptysheet.pdfreader_autoscroll.homeScreen.AllFilesFragment.getViewModel(AllFilesFragment.kt)
          at com.emptysheet.pdfreader_autoscroll.homeScreen.AllFilesFragment.subscribeUi(AllFilesFragment.kt:72)
          at com.emptysheet.pdfreader_autoscroll.homeScreen.AllFilesFragment.onCreateView(AllFilesFragment.kt:64)
          at androidx.fragment.app.Fragment.performCreateView(Fragment.java:2698)
          at androidx.fragment.app.FragmentStateManager.createView(FragmentStateManager.java:320)
          at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1187)
          at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1356)
          at androidx.fragment.app.FragmentManager.moveFragmentToExpectedState(FragmentManager.java:1434)
          at androidx.fragment.app.BackStackRecord.executeOps(BackStackRecord.java:442)
          at androidx.fragment.app.FragmentManager.executeOps(FragmentManager.java:2169)
          at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:1992)
          at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:1947)
          at androidx.fragment.app.FragmentManager.execSingleAction(FragmentManager.java:1818)
          at androidx.fragment.app.BackStackRecord.commitNow(BackStackRecord.java:297)
          at androidx.viewpager2.adapter.FragmentStateAdapter.placeFragmentInViewHolder(FragmentStateAdapter.java:341)
          at androidx.viewpager2.adapter.FragmentStateAdapter.onViewAttachedToWindow(FragmentStateAdapter.java:276)
          at androidx.viewpager2.adapter.FragmentStateAdapter.onViewAttachedToWindow(FragmentStateAdapter.java:67)
          at androidx.recyclerview.widget.RecyclerView.dispatchChildAttached(RecyclerView.java:7556)
          at androidx.recyclerview.widget.RecyclerView$5.addView(RecyclerView.java:860)
          at androidx.recyclerview.widget.ChildHelper.addView(ChildHelper.java:107)
          at androidx.recyclerview.widget.RecyclerView$LayoutManager.addViewInt(RecyclerView.java:8601)
          at androidx.recyclerview.widget.RecyclerView$LayoutManager.addView(RecyclerView.java:8559)
          at androidx.recyclerview.widget.RecyclerView$LayoutManager.addView(RecyclerView.java:8547)
          at androidx.recyclerview.widget.LinearLayoutManager.layoutChunk(LinearLayoutManager.java:1641)
          at androidx.recyclerview.widget.LinearLayoutManager.fill(LinearLayoutManager.java:1587)
          at androidx.recyclerview.widget.LinearLayoutManager.onLayoutChildren(LinearLayoutManager.java:665)
          at androidx.recyclerview.widget.RecyclerView.dispatchLayoutStep2(RecyclerView.java:4134)
          at androidx.recyclerview.widget.RecyclerView.dispatchLayout(RecyclerView.java:3851)
          at androidx.recyclerview.widget.RecyclerView.onLayout(RecyclerView.java:4404)
          at android.view.View.layout(View.java:15689)
          at android.view.ViewGroup.layout(ViewGroup.java:5048)
          at androidx.viewpager2.widget.ViewPager2.onLayout(ViewPager2.java:527)
          at android.view.View.layout(View.java:15689)
          at android.view.ViewGroup.layout(ViewGroup.java:5048)
          at com.google.android.material.appbar.HeaderScrollingViewBehavior.layoutChild(HeaderScrollingViewBehavior.java:148)
          at com.google.android.material.appbar.V
  </code></pre>