Hilt

Extend the functionality of Dagger Hilt to enable dependency injection of certain classes from the androidx libraries.

This table lists all the artifacts in the androidx.hilt group.

Artifact Stable Release Release Candidate Beta Release Alpha Release
hilt-common 1.2.0 - - -
hilt-compiler 1.2.0 - - -
hilt-work 1.2.0 - - -
hilt-navigation 1.2.0 - - -
hilt-navigation-compose 1.2.0 - - -
hilt-navigation-fragment 1.2.0 - - -
This library was last updated on: February 21, 2024

Feedback

Your feedback helps make Jetpack better. Let us know if you discover new issues or have ideas for improving this library. Please take a look at the existing issues in this library before you create a new one. You can add your vote to an existing issue by clicking the star button.

Create a new issue

See the Issue Tracker documentation for more information.

Hilt Version 1.2

Version 1.2.0

February 21, 2024

androidx.hilt:hilt-*:1.2.0 is released. Version 1.2.0 contains these commits.

Important changes since 1.1.0

  • Add assisted injection support to hiltViewModel() and hiltNavGraphViewModels(). Now these functions take an additional callback in which you can use the passed in assisted factory to create an assisted injected ViewModel.

Version 1.2.0-rc01

February 7, 2024

androidx.hilt:hilt-*:1.2.0-rc01 is released. Version 1.2.0-rc01 contains these commits.

Version 1.2.0-beta01

January 24, 2024

androidx.hilt:hilt-*:1.2.0-beta01 is released. Version 1.2.0-beta01 contains these commits.

Version 1.2.0-alpha01

December 13, 2023

androidx.hilt:hilt-*:1.2.0-alpha01 is released. Version 1.2.0-alpha01 contains these commits.

API Changes

  • Add overloaded hiltViewModel() and hiltNavGraphViewModels() functions for assisted injection support. (Ieb98d)

Hilt Version 1.1.0

Version 1.1.0

November 1, 2023

androidx.hilt:hilt-*:1.1.0 is released. Version 1.1.0 contains these commits.

Major changes since 1.0.0

  • Add KSP support to androidx.hilt.
  • Accept HasDefaultViewModelProviderFactory in hiltViewModel().
  • The hiltViewModel() API now takes an optional key parameter.

Version 1.1.0-rc01

October 18, 2023

androidx.hilt:hilt-*:1.1.0-rc01 is released. Version 1.1.0-rc01 contains these commits.

Version 1.1.0-beta01

androidx.hilt:hilt-common:1.1.0-beta01, androidx.hilt:hilt-compiler:1.1.0-beta01, androidx.hilt:hilt-work:1.1.0-beta01, androidx.hilt:hilt-navigation:1.1.0-beta01, androidx.hilt:hilt-navigation-compose:1.1.0-beta01, and androidx.hilt:hilt-navigation-fragment:1.1.0-beta01 are released.

Version 1.1.0-alpha01

August 9, 2023

androidx.hilt:hilt-common:1.1.0-alpha01, androidx.hilt:hilt-compiler:1.1.0-alpha01, and androidx.hilt:hilt-work:1.1.0-alpha01 are released. Version 1.1.0-alpha01 contains these commits.

New Features

  • Add KSP support to androidx.hilt. Note that this is to prepare for Hilt’s KSP support. In order to use the KSP version of androidx.hilt, the main Hilt support has to be released.

Hilt-Navigation-Fragment Version 1.1.0

Version 1.1.0-alpha02

April 19, 2023

androidx.hilt:hilt-navigation-fragment:1.1.0-alpha02 is released. Version 1.1.0-alpha02 contains these commits.

API Changes

Bug Fixes

  • Fixed an issue where hiltNavGraphViewModel() doesn’t inject SavedStateHandle. (3ef114, b/272099838)

Hilt-Navigation Version 1.1.0

Version 1.1.0-alpha02

April 19, 2023

androidx.hilt:hilt-navigation:1.1.0-alpha02 is released. Version 1.1.0-alpha02 contains these commits.

Version 1.1.0-alpha01

December 7, 2022

androidx.hilt:hilt-navigation:1.1.0-alpha01 is released. Version 1.1.0-alpha01 contains these commits.

Hilt-Navigation-Compose Version 1.1.0

Version 1.1.0-alpha01

December 7, 2022

androidx.hilt:hilt-navigation-compose:1.1.0-alpha01 is released. Version 1.1.0-alpha01 contains these commits.

API Changes

  • The hiltViewModel() API now takes an optional key parameter. This allows you to get multiple instances of the same ViewModel type using different keys. (I6ee47, b/245139957)

Hilt-Navigation-Compose Version 1.0.0

Version 1.0.0

January 26, 2022

androidx.hilt:hilt-navigation-compose:1.0.0 is released. Version 1.0.0 contains these commits.

Major features of 1.0.0

The androidx.hilt:hilt-navigation-compose artifact provides APIs that allow users to get a @HiltViewModel annotated ViewModel from a Navigation back stack entry within a Compose application using :navigation-compose.

The function hiltViewModel() returns an existing ViewModel or creates a new one scoped to the current navigation graph present on the NavController back stack. The function can optionally take a NavBackStackEntry to scope the ViewModel to a parent back stack entry.

Version 1.0.0-rc01

December 15, 2021

androidx.hilt:hilt-navigation-compose:1.0.0-rc01 is released with no changes since 1.0.0-beta01. Version 1.0.0-rc01 contains these commits.

Version 1.0.0-beta01

November 17, 2021

androidx.hilt:hilt-navigation-compose:1.0.0-beta01 is released. Version 1.0.0-beta01 contains these commits.

API Changes

  • Remove deprecated hiltNavGraphViewModel() function and its overloads. These were all replaced by hiltViewModel(). (Iaf7d7)

Version 1.0.0-alpha03

June 16, 2021

androidx.hilt:hilt-navigation-compose:1.0.0-alpha03 is released. Version 1.0.0-alpha03 contains these commits.

API Changes

  • The hiltViewModel() method now aligns with the viewModel() API changes in Lifecycle-ViewModel-Compose 1.0.0-alpha07 and now takes an optional ViewModelStoreOwner parameter, rather than having a no argument version and one that takes only a NavBackStackEntry. This allows you to continue to use hiltViewModel() to access the default owner provided by LocalViewModelStoreOwner or use hiltViewModel(navBackStackEntry) or another ViewModelStoreOwner to specify any specific owner. (I2628d)

Version 1.0.0-alpha02

May 18, 2021

androidx.hilt:hilt-navigation-compose:1.0.0-alpha02 is released. Version 1.0.0-alpha02 contains these commits.

API Changes

  • Renamed hiltNavGraphViewModel() to hiltViewModel() and removed the extension on NavController since a user can directly use the navigation-compose API for getting a NavBackStackEntry from a route. (I6ef57)

Compose Compatibility

  • androidx.hilt:hilt-navigation-compose:1.0.0-alpha02 is only compatible with Compose version 1.0.0-beta07 and above.

Dependency updates

Version 1.0.0-alpha01

March 10, 2021

androidx.hilt:hilt-navigation-compose:1.0.0-alpha01 is released. Version 1.0.0-alpha01 contains these commits.

New Features

  • The :hilt-navigation-compose artifact provides APIs that allow users to get a @HiltViewModel annotated ViewModel from a Navigation back stack entry within a Compose application using :navigation-compose. The function hiltNavGraphViewModel() can either take a NavBackStackEntry or a 'route' string that can be used to scope the ViewModel to either the current back stack entry or to a parent entry in the stack. (Ia9234)

Hilt Version 1.1

Version 1.1.0-beta01

October 4, 2023

androidx.hilt:hilt-*:1.1.0-beta01 is released. Version 1.1.0-beta01 contains these commits.

androidx.hilt:hilt-*:1.1.0-beta01 is released with no changes since 1.1.0-alpha*.

Hilt Version 1.0.0

Version 1.0.0

May 5, 2021

androidx.hilt:hilt-*:1.0.0 is released. Version 1.0.0 contains these commits.

Major features of 1.0.0

The androidx.hiltartifacts offers extensions for integrating Hilt with various other AndroidX libraries, such as WorkManager and Navigation. To see a list of features and examples check out the integration documentation.

Version 1.0.0-beta01

March 10, 2021

androidx.hilt:hilt-*:1.0.0-beta01 is released. Version 1.0.0-beta01 contains these commits.

API Changes

  • Remove @Deprecated types from the AndroidX Hilt artifacts, specifically @androidx.hilt.ViewModelInject and @androidx.hilt.Assisted. Note that @ViewModelInject was replaced by @HiltViewModel. (I626fe)

Version 1.0.0-alpha03

January 27, 2021

androidx.hilt:hilt-*:1.0.0-alpha03 is released. Version 1.0.0-alpha03 contains these commits.

New Features

  • Provide APIs for retrieving @HiltViewModel annotated ViewModel from a Navigation NavBackStackEntry. The artifact hilt-navigation-fragment offers a hiltNavGraphViewModels Kotlin extension while hilt-navigation exposes a HiltViewModelFactory factory method that takes in a NavBackStackEntry as argument and returns a ViewModelProvider.Facctory that can be used with ViewModelProvider or other View Model retrieving APIs, such as Compose’s viewModel() function: viewModel(HiltViewModelFactory(AmbientContext.current, backStackEntry)). (I00e67)

API Changes

  • Replace @WorkerInject with @HiltWorker. @HiltWorker is now a type annotation and requires the usage of @AssistedInject in the constructor. (Ic2f15)
  • Deprecate @ViewModelInject. Equivalent functionality is now offered by @HiltViewModel, which is now part of the core Hilt Android APIs. (I36a41)

Bug Fixes

  • Fix an issue where AndroidX Hilt extension Modules would not get correctly picked up by Hilt causing Workers to not be available for creation. (I3181c, b/159540434)
  • Migrate AndroidX Hilt extensions to the SingletonComponent, removing the deprecated warning of using ApplicationCompoonent. (I9c916, b/175849092)

Version 1.0.0-alpha02

July 22, 2020

androidx.hilt:hilt-*:1.0.0-alpha02 is released. Version 1.0.0-alpha02 contains these commits.

Bug Fixes

  • Fixed an issue of duplicate saved state keys when a non-Hilt injected ViewModel was requested from an @AndroidEntryPoint-annotated class. (b/158737069)
  • Fixed an issue in HiltWorkerFactory where it wouldn’t correctly initialize nested Worker classes annotated with @WorkerInject. (b/160524718)

Version 1.0.0-alpha01

June 10, 2020

androidx.hilt:hilt-*:1.0.0-alpha01 is released. Version 1.0.0-alpha01 contains these commits.

The androidx.hilt package and libraries extend the functionality of Dagger Hilt to enable dependency injection of certain classes from the androidx libraries.