「Android/kotlin/DaggerHilt」の版間の差分
提供: 初心者エンジニアの簡易メモ
| 行59: | 行59: | ||
class MainActivity : AppCompatActivity() { | class MainActivity : AppCompatActivity() { | ||
@Inject | @Inject | ||
| − | lateinit var usecase: | + | lateinit var usecase: HogeUsecase |
override fun onCreate(savedInstanceState: Bundle?) { | override fun onCreate(savedInstanceState: Bundle?) { | ||
super.onCreate(savedInstanceState) | super.onCreate(savedInstanceState) | ||
2021年2月9日 (火) 04:16時点における版
サンプル
プロジェクト直のbuild.gradleに以下追加
buildscript {
dependencies {
classpath "com.android.tools.build:gradle:4.1.1"
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
def dagger_hilt_version = "2.31-alpha"
classpath "com.google.dagger:hilt-android-gradle-plugin:${dagger_hilt_version}"
}
}
app/build.gradleに以下追加
plugins {
id 'kotlin-kapt'
id 'dagger.hilt.android.plugin'
}
dependencies {
def dagger_hilt_version = "2.31.2-alpha"
implementation "com.google.dagger:hilt-android:${dagger_hilt_version}"
kapt "com.google.dagger:hilt-android-compiler:${dagger_hilt_version}"
def dagger_hilt_view_model_version = "1.0.0-alpha03"
implementation "androidx.hilt:hilt-lifecycle-viewmodel:${dagger_hilt_view_model_version}"
kapt "androidx.hilt:hilt-compiler:${dagger_hilt_view_model_version}"
}
applicationを追加
MainApplication.kt
import android.app.Application import dagger.hilt.android.HiltAndroidApp @HiltAndroidApp class MainApplication : Application()
AndoridManifest.xml のandroid:nameにpathを追加
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.daggerhiltapplication">
<application
android:name="com.example.daggerhiltapplication.MainApplication"
MainActivity.kt
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import dagger.hilt.android.AndroidEntryPoint
import javax.inject.Inject
@AndroidEntryPoint
class MainActivity : AppCompatActivity() {
@Inject
lateinit var usecase: HogeUsecase
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
}
}
