Hilt
下表列出了 androidx.hilt
组中的所有工件。
制品 | 稳定版 | 候选版 | Beta 版 | Alpha 版 |
---|---|---|---|---|
CANNOT TRANSLATE | 1.2.0 | - | - | - |
hilt 编译器 | 1.2.0 | - | - | - |
高跷工作 | 1.2.0 | - | - | - |
Hilt 导航 | 1.2.0 | - | - | - |
hilt-navigation-compose | 1.2.0 | - | - | - |
hilt-navigation-fragment | 1.2.0 | - | - | - |
反馈
您的反馈将帮助我们改进 Jetpack。如果您发现了新问题,或对此库有任何改进建议,请告诉我们。创建新问题前,请先查看此库中的现有问题。您可以点击星标按钮,为现有问题投票。
如需了解详情,请参阅问题跟踪器文档。
Hilt 版本 1.2
版本 1.2.0
2024 年 2 月 21 日
发布了 androidx.hilt:hilt-*:1.2.0
。版本 1.2.0 中包含这些提交内容。
自 1.1.0 以来的重要变更
- 为
hiltViewModel()
和hiltNavGraphViewModels()
添加了辅助注入支持。现在,这些函数接受一个额外的回调,您可以在其中使用传入的辅助工厂创建辅助注入的ViewModel
。
版本 1.2.0-rc01
2024 年 2 月 7 日
发布了 androidx.hilt:hilt-*:1.2.0-rc01
。版本 1.2.0-rc01 中包含这些提交内容。
版本 1.2.0-beta01
2024 年 1 月 24 日
发布了 androidx.hilt:hilt-*:1.2.0-beta01
。版本 1.2.0-beta01 中包含这些提交内容。
版本 1.2.0-alpha01
2023 年 12 月 13 日
发布了 androidx.hilt:hilt-*:1.2.0-alpha01
。版本 1.2.0-alpha01 中包含这些提交内容。
API 变更
- 添加了重载的
hiltViewModel()
和hiltNavGraphViewModels()
函数,以实现辅助注入。(Ieb98d)
Hilt 版本 1.1.0
版本 1.1.0
2023 年 11 月 1 日
发布了 androidx.hilt:hilt-*:1.1.0
。版本 1.1.0 中包含这些提交内容。
自 1.0.0 以来的重要变更
- 向
androidx.hilt
添加了 KSP 支持。 - 在
hiltViewModel()
中接受HasDefaultViewModelProviderFactory
。 hiltViewModel()
API 现在接受可选的键参数。
版本 1.1.0-rc01
2023 年 10 月 18 日
发布了 androidx.hilt:hilt-*:1.1.0-rc01
。版本 1.1.0-rc01 中包含这些提交内容。
版本 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
和 androidx.hilt:hilt-navigation-fragment:1.1.0-beta01
。
版本 1.1.0-alpha01
2023 年 8 月 9 日
发布了 androidx.hilt:hilt-common:1.1.0-alpha01
、androidx.hilt:hilt-compiler:1.1.0-alpha01
和 androidx.hilt:hilt-work:1.1.0-alpha01
。版本 1.1.0-alpha01 中包含这些提交内容。
新功能
- 向
androidx.hilt
添加了 KSP 支持。请注意,这是为 Hilt 的 KSP 支持做好准备。若要使用 KSP 版本的 androidx.hilt,必须发布主要 Hilt 支持。
Hilt-Navigation-Fragment 版本 1.1.0
版本 1.1.0-alpha02
2023 年 4 月 19 日
发布了 androidx.hilt:hilt-navigation-fragment:1.1.0-alpha02
。版本 1.1.0-alpha02 中包含这些提交内容。
API 变更
- 在
hiltViewModel()
中接受HasDefaultViewModelProviderFactory
(I10ab6、b/249548618、b/195190169)
bug 修复
- 修复了
hiltNavGraphViewModel()
不注入SavedStateHandle
的问题。(3ef114、b/272099838)
Hilt-Navigation 版本 1.1.0
版本 1.1.0-alpha02
2023 年 4 月 19 日
发布了 androidx.hilt:hilt-navigation:1.1.0-alpha02
。版本 1.1.0-alpha02 中包含这些提交内容。
版本 1.1.0-alpha01
2022 年 12 月 7 日
发布了 androidx.hilt:hilt-navigation:1.1.0-alpha01
。版本 1.1.0-alpha01 中包含这些提交内容。
Hilt-Navigation-Compose 版本 1.1.0
版本 1.1.0-alpha01
2022 年 12 月 7 日
发布了 androidx.hilt:hilt-navigation-compose:1.1.0-alpha01
。版本 1.1.0-alpha01 中包含这些提交内容。
API 变更
hiltViewModel()
API 现在接受可选的键参数。这样,您就可以使用不同的键获取同一ViewModel
类型的多个实例。(I6ee47、b/245139957)
Hilt-Navigation-Compose 版本 1.0.0
版本 1.0.0
2022 年 1 月 26 日
发布了 androidx.hilt:hilt-navigation-compose:1.0.0
。版本 1.0.0 中包含这些提交内容。
1.0.0 的主要功能
androidx.hilt:hilt-navigation-compose
工件提供的 API 可让用户使用 :navigation-compose
从 Compose 应用内的某个 Navigation 返回堆栈条目获取带有 @HiltViewModel
注解的 ViewModel。
hiltViewModel()
函数会返回一个现有的 ViewModel
,或创建新的 ViewModel,作用域限定为在 NavController
返回堆栈上显示的当前导航图。此函数可以选择接受 NavBackStackEntry
,以将 ViewModel
的作用域限定为返回堆栈父条目。
版本 1.0.0-rc01
2021 年 12 月 15 日
发布了 androidx.hilt:hilt-navigation-compose:1.0.0-rc01
,该版本与 1.0.0-beta01
相比没有变化。版本 1.0.0-rc01 中包含这些提交内容。
版本 1.0.0-beta01
2021 年 11 月 17 日
发布了 androidx.hilt:hilt-navigation-compose:1.0.0-beta01
。版本 1.0.0-beta01 中包含这些提交内容。
API 变更
- 移除已废弃的
hiltNavGraphViewModel()
函数及其重载。它们都已被hiltViewModel()
替换。(Iaf7d7)
版本 1.0.0-alpha03
2021 年 6 月 16 日
发布了 androidx.hilt:hilt-navigation-compose:1.0.0-alpha03
。版本 1.0.0-alpha03 中包含这些提交内容。
API 变更
hiltViewModel()
方法现在与 Lifecycle-ViewModel-Compose1.0.0-alpha07
中的viewModel()
API 变更保持一致,它现在接受可选的ViewModelStoreOwner
参数,而不是无参数版本和仅接受NavBackStackEntry
的版本。如此一来,您就可以继续使用hiltViewModel()
访问LocalViewModelStoreOwner
提供的默认所有者,或者使用hiltViewModel(navBackStackEntry)
或其他ViewModelStoreOwner
来指定任何特定所有者。(I2628d)
版本 1.0.0-alpha02
2021 年 5 月 18 日
发布了 androidx.hilt:hilt-navigation-compose:1.0.0-alpha02
。版本 1.0.0-alpha02 中包含这些提交内容。
API 变更
- 已将
hiltNavGraphViewModel()
重命名为hiltViewModel()
,并移除了对NavController
的扩展,因为用户可以直接使用navigation-compose
API 从路由获取NavBackStackEntry
。(I6ef57)
Compose 兼容性
androidx.hilt:hilt-navigation-compose:1.0.0-alpha02
仅与 Compose 版本1.0.0-beta07
及更高版本兼容。
依赖项更新
hilt-navigation-compose
现在依赖于 Navigation2.4.0-alpha01
。
版本 1.0.0-alpha01
2021 年 3 月 10 日
发布了 androidx.hilt:hilt-navigation-compose:1.0.0-alpha01
。版本 1.0.0-alpha01 中包含这些提交内容。
新功能
:hilt-navigation-compose
工件提供的 API 可让用户使用:navigation-compose
从 Compose 应用内的某个 Navigation 返回堆栈条目获取带有@HiltViewModel
注解的ViewModel
。函数hiltNavGraphViewModel()
可以接受一个NavBackStackEntry
或一个“route”字符串,该字符串可用于将ViewModel
作用域限定为当前的返回堆栈条目或堆栈中的父条目。(Ia9234)
Hilt 版本 1.1
版本 1.1.0-beta01
2023 年 10 月 4 日
发布了 androidx.hilt:hilt-*:1.1.0-beta01
。版本 1.1.0-beta01 中包含这些提交内容。
发布了 androidx.hilt:hilt-*:1.1.0-beta01
,该版本与 1.1.0-alpha*
相比没有变化。
Hilt 版本 1.0.0
版本 1.0.0
2021 年 5 月 5 日
发布了 androidx.hilt:hilt-*:1.0.0
。版本 1.0.0 中包含这些提交内容。
1.0.0 的主要功能
androidx.hilt
工件提供了将 Hilt 与各种其他 AndroidX 库(例如 WorkManager 和 Navigation)集成的扩展程序。如需查看功能和示例列表,请参阅集成文档。
版本 1.0.0-beta01
2021 年 3 月 10 日
发布了 androidx.hilt:hilt-*:1.0.0-beta01
。版本 1.0.0-beta01 中包含这些提交内容。
API 变更
- 从 AndroidX Hil 工件(尤其是
@androidx.hilt.ViewModelInject
和@androidx.hilt.Assisted
)中移除了@Deprecated
类型。请注意,@ViewModelInject
已替换为 @HiltViewModel。(I626fe)
版本 1.0.0-alpha03
2021 年 1 月 27 日
发布了 androidx.hilt:hilt-*:1.0.0-alpha03
。版本 1.0.0-alpha03 中包含这些提交内容。
新功能
- 提供 API 用于从 Navigation
NavBackStackEntry
检索@HiltViewModel
注释的 ViewModel。工件hilt-navigation-fragment
提供hiltNavGraphViewModels
Kotlin 扩展,而hilt-navigation
提供HiltViewModelFactory
工厂方法,该方法将NavBackStackEntry
作为参数并返回可与ViewModelProvider
或其他 ViewModel 检索 API(例如 Compose 的viewModel()
函数:viewModel(HiltViewModelFactory(AmbientContext.current, backStackEntry))
)搭配使用的ViewModelProvider.Facctory
。(I00e67)
API 变更
- 将
@WorkerInject
替换为@HiltWorker
。@HiltWorker
现在是类型注解,需要在构造函数中使用 @AssistedInject。(Ic2f15) - 废弃了
@ViewModelInject
。等效功能现在由@HiltViewModel
提供,后者现在是核心 Hilt Android API 的一部分。(I36a41)
bug 修复
- 修复了 Hilt 无法正确获取 AndroidX Hilt 扩展模块导致无法创建 Worker 的问题。(I3181c、b/159540434)
- 将 AndroidX Hilt 扩展迁移到
SingletonComponent
,移除了使用ApplicationCompoonent
时显示的弃用警告。(I9c916、b/175849092)
版本 1.0.0-alpha02
2020 年 7 月 22 日
发布了 androidx.hilt:hilt-*:1.0.0-alpha02
。版本 1.0.0-alpha02 中包含这些提交内容。
bug 修复
- 修复了以下问题:向带有
@AndroidEntryPoint
注解的类请求非 Hilt 注入的 ViewModel 时,保存的状态键会重复。(b/158737069) - 修复了
HiltWorkerFactory
中无法正确初始化带有@WorkerInject
注解的嵌套 Worker 类的问题。(b/160524718)
版本 1.0.0-alpha01
2020 年 6 月 10 日
发布了 androidx.hilt:hilt-*:1.0.0-alpha01
。版本 1.0.0-alpha01 中包含这些提交内容。
androidx.hilt
软件包和库扩展了 Dagger Hilt 的功能,以实现 Androidx 库中某些类的依赖项注入。