diff options
Diffstat (limited to 'app/src/main/kotlin/com/pitchedapps/frost/FrostApp.kt')
-rw-r--r-- | app/src/main/kotlin/com/pitchedapps/frost/FrostApp.kt | 66 |
1 files changed, 21 insertions, 45 deletions
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/FrostApp.kt b/app/src/main/kotlin/com/pitchedapps/frost/FrostApp.kt index 100aeecb..1e2b438e 100644 --- a/app/src/main/kotlin/com/pitchedapps/frost/FrostApp.kt +++ b/app/src/main/kotlin/com/pitchedapps/frost/FrostApp.kt @@ -20,64 +20,48 @@ import android.app.Activity import android.app.Application import android.os.Bundle import android.util.Log -import ca.allanwang.kau.kpref.KPrefFactory -import ca.allanwang.kau.kpref.KPrefFactoryAndroid import ca.allanwang.kau.logging.KL import ca.allanwang.kau.utils.buildIsLollipopAndUp -import com.pitchedapps.frost.db.FrostDatabase -import com.pitchedapps.frost.facebook.FbCookie +import com.pitchedapps.frost.db.CookieDao +import com.pitchedapps.frost.db.NotificationDao import com.pitchedapps.frost.injectors.ThemeProvider import com.pitchedapps.frost.prefs.Prefs import com.pitchedapps.frost.services.scheduleNotificationsFromPrefs import com.pitchedapps.frost.services.setupNotificationChannels import com.pitchedapps.frost.utils.FrostPglAdBlock import com.pitchedapps.frost.utils.L +import dagger.hilt.android.HiltAndroidApp import java.util.Random -import org.koin.android.ext.koin.androidContext -import org.koin.android.ext.koin.androidLogger -import org.koin.core.component.KoinComponent -import org.koin.core.component.get -import org.koin.core.context.startKoin -import org.koin.core.module.Module -import org.koin.dsl.module +import javax.inject.Inject /** * Created by Allan Wang on 2017-05-28. */ -class FrostApp : Application(), KoinComponent { +@HiltAndroidApp +class FrostApp : Application() { - private lateinit var prefs: Prefs - private lateinit var themeProvider: ThemeProvider + @Inject + lateinit var prefs: Prefs + + @Inject + lateinit var themeProvider: ThemeProvider + + @Inject + lateinit var cookieDao: CookieDao + + @Inject + lateinit var notifDao: NotificationDao override fun onCreate() { - startKoin { - if (BuildConfig.DEBUG) { - androidLogger() - } - androidContext(this@FrostApp) - modules( - listOf( - FrostDatabase.module(), - prefFactoryModule(), - Prefs.module(), - FbCookie.module(), - ThemeProvider.module() - ) - ) - } - if (!buildIsLollipopAndUp) { // not supported - super.onCreate() - return - } - prefs = get() - themeProvider = get() + super.onCreate() + + if (!buildIsLollipopAndUp) return // not supported + initPrefs() L.i { "Begin Frost for Facebook" } FrostPglAdBlock.init(this) - super.onCreate() - setupNotificationChannels(this, themeProvider) scheduleNotificationsFromPrefs(prefs) @@ -122,12 +106,4 @@ class FrostApp : Application(), KoinComponent { } prefs.lastLaunch = System.currentTimeMillis() } - - companion object { - fun prefFactoryModule(): Module = module { - single<KPrefFactory> { - KPrefFactoryAndroid(get()) - } - } - } } |