From dc4ea5e96dfb7ee70733a2ad7e7bd8f21064b089 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 19 May 2025 04:02:24 +0000 Subject: [PATCH] Update dependency com.squareup.logcat:logcat to v0.2 (#2331) * Update dependency com.squareup.logcat:logcat to v0.2 * Fix build --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: FooIbar <118464521+FooIbar@users.noreply.github.com> --- app/src/main/kotlin/com/hippo/ehviewer/EhApplication.kt | 9 +++++++-- app/src/main/kotlin/com/hippo/ehviewer/Settings.kt | 2 +- .../com/hippo/ehviewer/ui/settings/AdvancedScreen.kt | 6 ++++-- .../main/kotlin/com/hippo/ehviewer/util/CrashHandler.kt | 2 +- .../kotlin/eu/kanade/tachiyomi/util/system/Logcat.kt | 4 ++-- gradle/libs.versions.toml | 2 +- 6 files changed, 16 insertions(+), 9 deletions(-) diff --git a/app/src/main/kotlin/com/hippo/ehviewer/EhApplication.kt b/app/src/main/kotlin/com/hippo/ehviewer/EhApplication.kt index 6f1f0661d..2f0b61eb0 100644 --- a/app/src/main/kotlin/com/hippo/ehviewer/EhApplication.kt +++ b/app/src/main/kotlin/com/hippo/ehviewer/EhApplication.kt @@ -100,8 +100,13 @@ class EhApplication : AppCompatDelegate.setDefaultNightMode(mode) } } - if (!LogcatLogger.isInstalled && Settings.saveCrashLog) { - LogcatLogger.install(AndroidLogcatLogger(LogPriority.VERBOSE)) + LogcatLogger.loggers += AndroidLogcatLogger(LogPriority.VERBOSE) + Settings.saveCrashLog.valueFlow().collect { + if (it) { + LogcatLogger.install() + } else { + LogcatLogger.uninstall() + } } } lifecycle.addObserver(lockObserver) diff --git a/app/src/main/kotlin/com/hippo/ehviewer/Settings.kt b/app/src/main/kotlin/com/hippo/ehviewer/Settings.kt index f3a7707ed..05cc33e18 100644 --- a/app/src/main/kotlin/com/hippo/ehviewer/Settings.kt +++ b/app/src/main/kotlin/com/hippo/ehviewer/Settings.kt @@ -122,6 +122,7 @@ object Settings : DataStorePreferences(null) { val showGalleryPages = boolPref("show_gallery_pages", true) val qSSaveProgress = boolPref("qs_save_progress", true) val security = boolPref("require_unlock", false) + val saveCrashLog = boolPref("save_crash_log", true) val animateItems = boolPref("animate_items", true) val enableCronet = boolPref("enable_cronet", true) val enableQuic = boolPref("enable_quic", true) @@ -159,7 +160,6 @@ object Settings : DataStorePreferences(null) { var mediaScan by boolPref("media_scan", false).observed { updateWhenKeepMediaStatusChanges() } var hasDefaultDownloadLabel by boolPref("has_default_download_label", false) var saveParseErrorBody by boolPref("save_parse_error_body", true) - var saveCrashLog by boolPref("save_crash_log", true) var removeImageFiles by boolPref("include_pic", true) var harmonizeCategoryColor by boolPref("harmonize_category_color", true) var preloadThumbAggressively by boolPref("preload_thumb_aggressively", false) diff --git a/app/src/main/kotlin/com/hippo/ehviewer/ui/settings/AdvancedScreen.kt b/app/src/main/kotlin/com/hippo/ehviewer/ui/settings/AdvancedScreen.kt index eecaff262..6d186b20b 100644 --- a/app/src/main/kotlin/com/hippo/ehviewer/ui/settings/AdvancedScreen.kt +++ b/app/src/main/kotlin/com/hippo/ehviewer/ui/settings/AdvancedScreen.kt @@ -120,10 +120,12 @@ fun AnimatedVisibilityScope.AdvancedScreen(navigator: DestinationsNavigator) = S } } } - SwitchPreference( + var saveCrashLog by Settings.saveCrashLog.asMutableState() + SwitchPref( + checked = saveCrashLog, + onMutate = { saveCrashLog = !saveCrashLog }, title = stringResource(id = R.string.settings_advanced_save_crash_log), summary = stringResource(id = R.string.settings_advanced_save_crash_log_summary), - value = Settings::saveCrashLog, ) val dumpLogError = stringResource(id = R.string.settings_advanced_dump_logcat_failed) LauncherPreference( diff --git a/app/src/main/kotlin/com/hippo/ehviewer/util/CrashHandler.kt b/app/src/main/kotlin/com/hippo/ehviewer/util/CrashHandler.kt index 98b57a1cb..36ecba07b 100644 --- a/app/src/main/kotlin/com/hippo/ehviewer/util/CrashHandler.kt +++ b/app/src/main/kotlin/com/hippo/ehviewer/util/CrashHandler.kt @@ -19,7 +19,7 @@ object CrashHandler { fun install() { val handler = Thread.getDefaultUncaughtExceptionHandler() Thread.setDefaultUncaughtExceptionHandler { t, e -> - if (Settings.saveCrashLog) { + if (Settings.saveCrashLog.value) { runCatching { saveCrashLog(e) } } handler?.uncaughtException(t, e) diff --git a/app/src/main/kotlin/eu/kanade/tachiyomi/util/system/Logcat.kt b/app/src/main/kotlin/eu/kanade/tachiyomi/util/system/Logcat.kt index 9dfc19737..e1b39af49 100644 --- a/app/src/main/kotlin/eu/kanade/tachiyomi/util/system/Logcat.kt +++ b/app/src/main/kotlin/eu/kanade/tachiyomi/util/system/Logcat.kt @@ -4,11 +4,11 @@ import logcat.LogPriority import logcat.asLog import logcat.logcat as logcatImpl -inline fun logcat(tag: String, priority: LogPriority = LogPriority.DEBUG, message: () -> String) { +inline fun logcat(tag: String, priority: LogPriority = LogPriority.DEBUG, crossinline message: () -> String) { logcatImpl(tag, priority, message) } -inline fun Any.logcat(priority: LogPriority = LogPriority.DEBUG, message: () -> String) { +inline fun Any.logcat(priority: LogPriority = LogPriority.DEBUG, crossinline message: () -> String) { logcatImpl(priority, message = message) } diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index cdb284702..682beecc7 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -98,7 +98,7 @@ okhttp-bom = { module = "com.squareup.okhttp3:okhttp-bom", version.ref = "okhttp okhttp-android = { module = "com.squareup.okhttp3:okhttp-android" } ktor-client-okhttp = { module = "io.ktor:ktor-client-okhttp", version.ref = "ktor" } -logcat = "com.squareup.logcat:logcat:0.1" +logcat = "com.squareup.logcat:logcat:0.2" okio-jvm = { module = "com.squareup.okio:okio-jvm", version.ref = "okio" }