サンプルニュースアプリを作成する「依存性注入の新しい方法」(パート3)を活用します。

HILTを使用して、パブリックAPIからニュースのリストを取得し、出力が次のようになる簡単なアプリを作成します-

このブログは、前の投稿パート1&の続きです。パート2

このパートでは、DaggerHILTを使用して簡単なアプリを作成します。

まあ、私はすでにDagger2を使用して構築された簡単なアプリを持っていました。このパートでは、アプリを変更し、HILTコードの追加のみに焦点を当てます。

これは、公開ニュースAPIを使用してニュースをリストに表示する基本的なニュースアプリです。これは、これらのもので構成されています{Android SDK、Kotlin、MVVM、HILT(以前のコミットにはDagger2とJunit&Mockitoがあります)。 {Constraint Set andLottie}を使用したアニメーションもほとんどありません。

コードリンク

ステップ1-アプリケーションクラスはどのように見えるか。

Daggerを使用する場合のアプリケーションクラス

HILT使用時のアプリケーションクラス

お気づきのとおり、HILTを使用する場合の主な重要な違いは、デフォルトでHILTによって提供されるApplicationComponentを取得することであり、これを独自に記述する必要はありません。 (ご覧のとおり、コードのその部分についてコメントしています。)

& @HiltAndroidApp を追加しました。このアノテーションをApplicationクラスに適用して、Hiltコード生成をトリガーし、その過程でAppコンポーネントを作成する必要があります。 。

ステップ2:ViewModelまたはリポジトリの変更?

まず、カスタムViewModelファクトリクラスの作成に別れを告げましょう。

短剣を使用する場合

HILTを使用する場合


リポジトリとビューモデルの両方がHILTアノテーション @ViewModelInjec tと @Inject を使用し、HILTによって生成された依存関係非巡回グラフから必要な依存関係を取得していることを確認してください。

>

残りのコードは同じままです。これらは、Dagger2からHILTに移行するときに必要な基本的な変更です。

ここで完全に機能するコードを確認できます

Dagger2の動作を確認するには、以前のコミットを確認してから、HILTをどのように移行して実行したかを確認し、最新のコードを確認できます。

ハッピーコーディング:)