Files
Mealient/app/src/main/java/gq/kirmanak/mealient/App.kt
2023-11-15 18:07:44 +00:00

42 lines
1.2 KiB
Kotlin

package gq.kirmanak.mealient
import android.app.Application
import coil.Coil
import coil.ImageLoader
import com.google.android.material.color.DynamicColors
import dagger.hilt.android.HiltAndroidApp
import gq.kirmanak.mealient.architecture.configuration.BuildConfiguration
import gq.kirmanak.mealient.data.migration.MigrationDetector
import gq.kirmanak.mealient.logging.Logger
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.Job
import kotlinx.coroutines.launch
import javax.inject.Inject
@HiltAndroidApp
class App : Application() {
@Inject
lateinit var logger: Logger
@Inject
lateinit var buildConfiguration: BuildConfiguration
@Inject
lateinit var migrationDetector: MigrationDetector
@Inject
lateinit var imageLoader: ImageLoader
private val appCoroutineScope = CoroutineScope(Dispatchers.Main + Job())
override fun onCreate() {
super.onCreate()
logger.v { "onCreate() called" }
DynamicColors.applyToActivitiesIfAvailable(this)
appCoroutineScope.launch { migrationDetector.executeMigrations() }
Coil.setImageLoader(imageLoader)
}
}