35 lines
935 B
Kotlin
35 lines
935 B
Kotlin
package dev.meloda.fast.common
|
|
|
|
import android.app.Application
|
|
import androidx.preference.PreferenceManager
|
|
import coil.ImageLoader
|
|
import coil.ImageLoaderFactory
|
|
import dev.meloda.fast.common.di.applicationModule
|
|
import dev.meloda.fast.datastore.AppSettings
|
|
import org.koin.android.ext.android.get
|
|
import org.koin.android.ext.koin.androidContext
|
|
import org.koin.android.ext.koin.androidLogger
|
|
import org.koin.core.context.GlobalContext.startKoin
|
|
|
|
class AppGlobal : Application(), ImageLoaderFactory {
|
|
|
|
override fun onCreate() {
|
|
super.onCreate()
|
|
|
|
val preferences = PreferenceManager.getDefaultSharedPreferences(this)
|
|
AppSettings.init(preferences)
|
|
|
|
initKoin()
|
|
}
|
|
|
|
private fun initKoin() {
|
|
startKoin {
|
|
androidLogger()
|
|
androidContext(this@AppGlobal)
|
|
modules(applicationModule)
|
|
}
|
|
}
|
|
|
|
override fun newImageLoader(): ImageLoader = get()
|
|
}
|