@@ -1,20 +0,0 @@
|
||||
package mihon.core.firebase
|
||||
|
||||
import android.content.Context
|
||||
import com.google.firebase.analytics.FirebaseAnalytics
|
||||
import com.google.firebase.crashlytics.FirebaseCrashlytics
|
||||
import eu.kanade.tachiyomi.core.security.PrivacyPreferences
|
||||
import kotlinx.coroutines.CoroutineScope
|
||||
import kotlinx.coroutines.flow.launchIn
|
||||
import kotlinx.coroutines.flow.onEach
|
||||
|
||||
object Firebase {
|
||||
fun setup(context: Context, preference: PrivacyPreferences, scope: CoroutineScope) {
|
||||
preference.analytics().changes().onEach { enabled ->
|
||||
FirebaseAnalytics.getInstance(context).setAnalyticsCollectionEnabled(enabled)
|
||||
}.launchIn(scope)
|
||||
preference.crashlytics().changes().onEach { enabled ->
|
||||
FirebaseCrashlytics.getInstance().setCrashlyticsCollectionEnabled(enabled)
|
||||
}.launchIn(scope)
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
package mihon.core.firebase
|
||||
|
||||
import android.content.Context
|
||||
import com.google.firebase.FirebaseApp
|
||||
import com.google.firebase.analytics.FirebaseAnalytics
|
||||
import com.google.firebase.crashlytics.FirebaseCrashlytics
|
||||
|
||||
object FirebaseConfig {
|
||||
private lateinit var analytics: FirebaseAnalytics
|
||||
private lateinit var crashlytics: FirebaseCrashlytics
|
||||
|
||||
fun init(context: Context) {
|
||||
analytics = FirebaseAnalytics.getInstance(context)
|
||||
FirebaseApp.initializeApp(context)
|
||||
crashlytics = FirebaseCrashlytics.getInstance()
|
||||
}
|
||||
|
||||
fun setAnalyticsEnabled(enabled: Boolean) {
|
||||
analytics.setAnalyticsCollectionEnabled(enabled)
|
||||
}
|
||||
|
||||
fun setCrashlyticsEnabled(enabled: Boolean) {
|
||||
crashlytics.isCrashlyticsCollectionEnabled = enabled
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user