Hilt

Dagger Hilt の機能を拡張して、androidx ライブラリから特定のクラスの依存関係インジェクションを可能にします。

androidx.hilt グループ内のすべてのアーティファクトのリストを以下に示します。

アーティファクト 現在の安定版リリース 次のリリース候補 ベータ版リリース アルファ版リリース
hilt 1.0.0 - - -
hilt-navigation-compose - - - 1.0.0-alpha03
このライブラリの最終更新日: 2021 年 6 月 16 日

フィードバック

お寄せいただいたフィードバックは Jetpack 改善の参考にさせていただきます。新しい問題が見つかった場合や、このライブラリを改善するアイデアをお持ちの場合は、お知らせください。新しい問題を報告していただく前に、このライブラリの既存の問題をご確認ください。スターボタンをクリックすると、既存の問題に投票できます。

新しい問題を報告する

詳細については、Issue Tracker のドキュメントをご覧ください。

Hilt-Navigation-Compose バージョン 1.0.0

バージョン 1.0.0-alpha03

2021 年 6 月 16 日

androidx.hilt:hilt-navigation-compose:1.0.0-alpha03 がリリースされました。バージョン 1.0.0-alpha03 に含まれるコミットについては、こちらをご覧ください

API の変更

  • hiltViewModel() メソッドが Lifecycle-ViewModel-Compose 1.0.0-alpha07viewModel() 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 に含まれる commit については、こちらをご覧ください

API の変更

  • ユーザーはルートから NavBackStackEntry を取得するために navigation-compose API を直接使用できるので、hiltNavGraphViewModel() の名前を hiltViewModel() に変更し、NavController の拡張機能を削除しました。(I6ef57

Compose の互換性

  • androidx.hilt:hilt-navigation-compose:1.0.0-alpha02 は、Compose バージョン 1.0.0-beta07 以降に対してのみ互換性があります。

依存関係の更新

バージョン 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 または「ルート」文字列を受け入れることができます。これを使用して、ViewModel のスコープを現在のバックスタック エントリまたはスタック内の親エントリのいずれかに設定できます。(Ia9234

バージョン 1.0.0

バージョン 1.0.0

2021 年 5 月 5 日

androidx.hilt:hilt-*:1.0.0 がリリースされました。バージョン 1.0.0 に含まれる commit については、こちらをご覧ください

1.0.0 の主な機能

androidx.hilt アーティファクトは、Hilt を、WorkManager や Navigation などの他の各種 AndroidX ライブラリと統合するための拡張機能を提供します。機能と例の一覧については、統合ドキュメントをご覧ください。

バージョン 1.0.0-beta01

2021 年 3 月 10 日

androidx.hilt:hilt-*:1.0.0-beta01 がリリースされました。バージョン 1.0.0-beta01 に含まれる commit については、こちらをご覧ください

API の変更

  • AndroidX Hit アーティファクト(@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 に含まれるコミットについては、こちらをご覧ください

新機能

  • Navigation NavBackStackEntry から @HiltViewModel アノテーションが付けられた ViewModel を取得するための API を提供します。アーティファクト hilt-navigation-fragment は、hiltNavGraphViewModels Kotlin 拡張機能を提供します。一方、hilt-navigation は、NavBackStackEntry を引数として受け取り、ViewModelProvider.Facctory を返す HiltViewModelFactory ファクトリ メソッドを公開します。この値は ViewModelProvider、または View Model を取得する他の API(Compose の viewModel() 関数: viewModel(HiltViewModelFactory(AmbientContext.current, backStackEntry)) など)にも使用できます。(I00e67

API の変更

  • @WorkerInject@HiltWorker に置き換えました。@HiltWorker が型アノテーションになりました。今後はコンストラクタで @AssistedInject を使用する必要があります。(Ic2f15
  • @ViewModelInject のサポートが終了しました。同等の機能が、Hilt Android API のコアの一部となった @HiltViewModel で提供されるようになりました。(I36a41

バグの修正

  • AndroidX Hilt 拡張モジュールが Hilt で正しく受け取られず、ワーカーを作成に利用できない問題を修正しました。(I3181cb/159540434
  • AndroidX Hilt 拡張機能を SingletonComponent に移行し、ApplicationCompoonent の使用のサポート終了に関する警告を削除しました。(I9c916b/175849092

バージョン 1.0.0-alpha02

2020 年 7 月 22 日

androidx.hilt:hilt-*:1.0.0-alpha02 がリリースされました。バージョン 1.0.0-alpha02 に含まれるコミットについては、こちらをご覧ください。

バグの修正

  • Hilt 以外で注入された ViewModel が、@AndroidEntryPoint アノテーションが付与されたクラスからリクエストされた場合に、保存済みの状態キーが重複する問題を修正しました。(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 に含まれる commit については、こちらをご覧ください

androidx.hilt パッケージとライブラリは、Dagger Hilt の機能を拡張して、androidx ライブラリから特定のクラスの依存関係インジェクションを行えるようにします。