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.hilt
artifacts 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.