-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathTuripApplication.kt
More file actions
47 lines (38 loc) Β· 1.44 KB
/
TuripApplication.kt
File metadata and controls
47 lines (38 loc) Β· 1.44 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
package com.on.turip
import android.app.Application
import com.google.firebase.crashlytics.FirebaseCrashlytics
import com.on.turip.common.FidProvider
import com.on.turip.common.TuripDebugTree
import com.on.turip.common.TuripReleaseTree
import com.on.turip.data.initializer.FirebaseInstallationsInitializer
import com.on.turip.domain.userstorage.repository.UserStorageRepository
import dagger.hilt.android.HiltAndroidApp
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.SupervisorJob
import kotlinx.coroutines.launch
import timber.log.Timber
import javax.inject.Inject
@HiltAndroidApp
class TuripApplication : Application() {
@Inject
lateinit var userStorageRepository: UserStorageRepository
@Inject
lateinit var fidProvider: FidProvider
private val applicationScope = CoroutineScope(SupervisorJob() + Dispatchers.IO)
override fun onCreate() {
super.onCreate()
FirebaseCrashlytics.getInstance().setCrashlyticsCollectionEnabled(!BuildConfig.DEBUG)
applicationScope.launch {
FirebaseInstallationsInitializer(userStorageRepository)
.setupFirebaseInstallationId()
fidProvider.init()
FirebaseCrashlytics.getInstance().setUserId(fidProvider.cachedFid)
}
if (BuildConfig.DEBUG) {
Timber.plant(TuripDebugTree())
} else {
Timber.plant(TuripReleaseTree())
}
}
}