恢复和优化FireBase开关功能。
This commit is contained in:
@@ -67,7 +67,7 @@ class App : Application() {
|
||||
override fun onCreate() {
|
||||
super.onCreate()
|
||||
DynamicColors.applyToActivitiesIfAvailable(this)
|
||||
FirebaseManager.initFromPreferences(this)
|
||||
FirebaseManager.init(this)
|
||||
CrashHandler(this)
|
||||
if (isDebuggable) {
|
||||
ThreadUtils.setThreadAssertsDisabledForTesting(true)
|
||||
|
||||
@@ -169,7 +169,7 @@ object PreferKey {
|
||||
const val readAloudByMediaButton = "readAloudByMediaButton"
|
||||
const val showMangaUi = "showMangaUi"
|
||||
const val disableMangaScale = "disableMangaScale"
|
||||
const val firebaseEnabled = "firebaseEnabled"
|
||||
const val firebaseEnable = "firebaseEnable"
|
||||
const val cPrimary = "colorPrimary"
|
||||
const val cAccent = "colorAccent"
|
||||
const val cBackground = "colorBackground"
|
||||
|
||||
@@ -700,10 +700,10 @@ object AppConfig : SharedPreferences.OnSharedPreferenceChangeListener {
|
||||
}
|
||||
}
|
||||
|
||||
var firebaseEnabled: Boolean
|
||||
get() = appCtx.getPrefBoolean(PreferKey.firebaseEnabled, false)
|
||||
var firebaseEnable: Boolean
|
||||
get() = appCtx.getPrefBoolean(PreferKey.firebaseEnable, false)
|
||||
set(value) {
|
||||
appCtx.putPrefBoolean(PreferKey.firebaseEnabled, value)
|
||||
appCtx.putPrefBoolean(PreferKey.firebaseEnable, value)
|
||||
}
|
||||
|
||||
//跳转到漫画界面不使用富文本模式
|
||||
|
||||
@@ -230,7 +230,7 @@ class OtherConfigFragment : PreferenceFragment(),
|
||||
upPreferenceSummary(key, AppConfig.sourceEditMaxLine.toString())
|
||||
}
|
||||
|
||||
PreferKey.firebaseEnabled -> {
|
||||
PreferKey.firebaseEnable -> {
|
||||
sharedPreferences?.let {
|
||||
FirebaseManager.setEnabled(requireContext(), it.getBoolean(key, true))
|
||||
}
|
||||
|
||||
@@ -1,25 +1,23 @@
|
||||
package io.legato.kazusa.utils
|
||||
|
||||
import android.content.Context
|
||||
import androidx.core.content.edit
|
||||
import androidx.preference.PreferenceManager
|
||||
import com.google.firebase.FirebaseApp
|
||||
import com.google.firebase.analytics.FirebaseAnalytics
|
||||
import io.legato.kazusa.help.config.AppConfig
|
||||
|
||||
object FirebaseManager {
|
||||
|
||||
private const val PREF_KEY = "firebaseEnabled"
|
||||
private var isEnabled = false
|
||||
var isEnabled: Boolean
|
||||
get() = AppConfig.firebaseEnable
|
||||
private set(value) {
|
||||
AppConfig.firebaseEnable = value
|
||||
}
|
||||
|
||||
fun initFromPreferences(context: Context) {
|
||||
val prefs = PreferenceManager.getDefaultSharedPreferences(context)
|
||||
val enabled = prefs.getBoolean(PREF_KEY, true)
|
||||
applyState(context, enabled)
|
||||
fun init(context: Context) {
|
||||
applyState(context, isEnabled)
|
||||
}
|
||||
|
||||
fun setEnabled(context: Context, enabled: Boolean) {
|
||||
val prefs = PreferenceManager.getDefaultSharedPreferences(context)
|
||||
prefs.edit { putBoolean(PREF_KEY, enabled) }
|
||||
applyState(context, enabled)
|
||||
}
|
||||
|
||||
@@ -36,10 +34,9 @@ object FirebaseManager {
|
||||
FirebaseApp.getInstance().delete()
|
||||
}
|
||||
} catch (_: Exception) {
|
||||
// 忽略异常
|
||||
}
|
||||
}
|
||||
isEnabled = enabled
|
||||
}
|
||||
|
||||
fun isFirebaseEnabled(): Boolean = isEnabled
|
||||
}
|
||||
Reference in New Issue
Block a user