Hiltを設定する
Hiltとアプリケーションコンポーネントを追加します
「Hiltを設定する」はCoddyKit上の無料Android Academyレッスンです。 これはレッスン2/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはAndroid Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Android Academyコースには全4レッスンが含まれています。
プロジェクトに Hilt を追加する
Hilt には、Gradle プラグインと依存関係に加えて、アノテーションプロセッサ(KSP または kapt)が必要です。設定はプロジェクトごとに一度だけ行います。
Gradle プラグイン
KSP と合わせて、モジュールのビルドファイルに Hilt プラグインを適用します。
// module build.gradle.kts
plugins {
id("com.google.dagger.hilt.android")
id("com.google.devtools.ksp")
}依存関係
Hilt のランタイムとコンパイラを追加します。
dependencies {
implementation("com.google.dagger:hilt-android:2.x")
ksp("com.google.dagger:hilt-compiler:2.x")
}Application にアノテーションを付ける
Hilt にはアプリレベルのエントリポイントが必要です。@HiltAndroidApp のアノテーションを付けた Application のサブクラスを作成します。
import android.app.Application
import dagger.hilt.android.HiltAndroidApp
@HiltAndroidApp
class MyApp : Application()マニフェストに登録する
マニフェストの application タグで、このクラスを指定します。
<application
android:name=".MyApp"
... >@HiltAndroidApp の役割
Hilt のコード生成を開始し、依存関係グラフ全体のルートとなるアプリケーションレベルの依存関係コンテナを作成します。
Activity で注入を有効にする
注入が必要な Activity に @AndroidEntryPoint のアノテーションを付けます。
import dagger.hilt.android.AndroidEntryPoint
@AndroidEntryPoint
class MainActivity : ComponentActivity() {
// Hilt can now inject members here
}他のクラスのエントリポイント
@AndroidEntryPoint は Fragment、Service、BroadcastReceiver にも使用できます。それぞれを適切なスコープで Hilt グラフに接続します。
フィールド注入
エントリポイント内では、フィールドに @Inject を付けて依存関係を要求できます。
@AndroidEntryPoint
class MainActivity : ComponentActivity() {
@Inject lateinit var analytics: Analytics
}コンポーネント階層
Hilt は階層を生成します:SingletonComponent(アプリ) → ActivityRetainedComponent → ViewModelComponent → ActivityComponent。それぞれに対応するスコープアノテーションがあります。
設定チェックリスト
- Hilt と KSP のプラグインを適用します。
- ランタイムとコンパイラの依存関係を追加します。
@HiltAndroidAppを付けた Application を作成します。- 利用側に
@AndroidEntryPointを付けます。
クイックチェック
Hilt の設定について理解度を確認しましょう。
まとめ
学んだこと:
- Hilt と KSP のプラグインを適用し、依存関係を追加します。
- Application に付けた
@HiltAndroidAppがルートコンテナを作成します。 @AndroidEntryPointにより、Activity や Fragment で注入が有効になります。- フィールド注入には
@Injectを使用します。
よくある質問
「Hiltを設定する」レッスンは無料ですか?
はい。「Hiltを設定する」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Android Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Android Academyコースには全4レッスンが含まれています。
「Hiltを設定する」で何を学びますか?
Hiltとアプリケーションコンポーネントを追加します ブラウザで直接実行するハンズオンコードでAndroid Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Android Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのAndroid Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン2/4です。
「Hiltを設定する」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このAndroid Academyレッスンでコードを書いて実行できますか?
はい。すべてのAndroid Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- 依存性注入を使う理由
- Hiltを設定する
- モジュールとプロバイダー
- ViewModelに注入する