恢复和优化FireBase开关功能。

This commit is contained in:
HapeLee
2025-09-02 03:51:26 +08:00
parent 6190704280
commit f9ee992642
5 changed files with 15 additions and 18 deletions
+1 -1
View File
@@ -67,7 +67,7 @@ class App : Application() {
override fun onCreate() { override fun onCreate() {
super.onCreate() super.onCreate()
DynamicColors.applyToActivitiesIfAvailable(this) DynamicColors.applyToActivitiesIfAvailable(this)
FirebaseManager.initFromPreferences(this) FirebaseManager.init(this)
CrashHandler(this) CrashHandler(this)
if (isDebuggable) { if (isDebuggable) {
ThreadUtils.setThreadAssertsDisabledForTesting(true) ThreadUtils.setThreadAssertsDisabledForTesting(true)
@@ -169,7 +169,7 @@ object PreferKey {
const val readAloudByMediaButton = "readAloudByMediaButton" const val readAloudByMediaButton = "readAloudByMediaButton"
const val showMangaUi = "showMangaUi" const val showMangaUi = "showMangaUi"
const val disableMangaScale = "disableMangaScale" const val disableMangaScale = "disableMangaScale"
const val firebaseEnabled = "firebaseEnabled" const val firebaseEnable = "firebaseEnable"
const val cPrimary = "colorPrimary" const val cPrimary = "colorPrimary"
const val cAccent = "colorAccent" const val cAccent = "colorAccent"
const val cBackground = "colorBackground" const val cBackground = "colorBackground"
@@ -700,10 +700,10 @@ object AppConfig : SharedPreferences.OnSharedPreferenceChangeListener {
} }
} }
var firebaseEnabled: Boolean var firebaseEnable: Boolean
get() = appCtx.getPrefBoolean(PreferKey.firebaseEnabled, false) get() = appCtx.getPrefBoolean(PreferKey.firebaseEnable, false)
set(value) { set(value) {
appCtx.putPrefBoolean(PreferKey.firebaseEnabled, value) appCtx.putPrefBoolean(PreferKey.firebaseEnable, value)
} }
//跳转到漫画界面不使用富文本模式 //跳转到漫画界面不使用富文本模式
@@ -230,7 +230,7 @@ class OtherConfigFragment : PreferenceFragment(),
upPreferenceSummary(key, AppConfig.sourceEditMaxLine.toString()) upPreferenceSummary(key, AppConfig.sourceEditMaxLine.toString())
} }
PreferKey.firebaseEnabled -> { PreferKey.firebaseEnable -> {
sharedPreferences?.let { sharedPreferences?.let {
FirebaseManager.setEnabled(requireContext(), it.getBoolean(key, true)) FirebaseManager.setEnabled(requireContext(), it.getBoolean(key, true))
} }
@@ -1,25 +1,23 @@
package io.legato.kazusa.utils package io.legato.kazusa.utils
import android.content.Context import android.content.Context
import androidx.core.content.edit
import androidx.preference.PreferenceManager
import com.google.firebase.FirebaseApp import com.google.firebase.FirebaseApp
import com.google.firebase.analytics.FirebaseAnalytics import com.google.firebase.analytics.FirebaseAnalytics
import io.legato.kazusa.help.config.AppConfig
object FirebaseManager { object FirebaseManager {
private const val PREF_KEY = "firebaseEnabled" var isEnabled: Boolean
private var isEnabled = false get() = AppConfig.firebaseEnable
private set(value) {
AppConfig.firebaseEnable = value
}
fun initFromPreferences(context: Context) { fun init(context: Context) {
val prefs = PreferenceManager.getDefaultSharedPreferences(context) applyState(context, isEnabled)
val enabled = prefs.getBoolean(PREF_KEY, true)
applyState(context, enabled)
} }
fun setEnabled(context: Context, enabled: Boolean) { fun setEnabled(context: Context, enabled: Boolean) {
val prefs = PreferenceManager.getDefaultSharedPreferences(context)
prefs.edit { putBoolean(PREF_KEY, enabled) }
applyState(context, enabled) applyState(context, enabled)
} }
@@ -36,10 +34,9 @@ object FirebaseManager {
FirebaseApp.getInstance().delete() FirebaseApp.getInstance().delete()
} }
} catch (_: Exception) { } catch (_: Exception) {
// 忽略异常
} }
} }
isEnabled = enabled isEnabled = enabled
} }
fun isFirebaseEnabled(): Boolean = isEnabled
} }