mirror of
https://github.com/null2264/yokai.git
synced 2025-06-21 10:44:42 +00:00
feat: Verbose logging
This commit is contained in:
parent
1925a503d9
commit
5a1a7063b2
7 changed files with 30 additions and 5 deletions
|
@ -11,6 +11,7 @@
|
|||
-->
|
||||
## Additions
|
||||
- Sync DoH provider list with upstream (added Mullvad, Control D, Njalla, and Shecan)
|
||||
- Added option to enable verbose logging
|
||||
|
||||
## Fixes
|
||||
- Fixed only few DoH provider is actually being used (Cloudflare, Google, AdGuard, and Quad9)
|
||||
|
|
|
@ -44,6 +44,7 @@ import eu.kanade.tachiyomi.data.coil.TachiyomiImageDecoder
|
|||
import eu.kanade.tachiyomi.data.notification.Notifications
|
||||
import eu.kanade.tachiyomi.data.preference.PreferencesHelper
|
||||
import eu.kanade.tachiyomi.network.NetworkHelper
|
||||
import eu.kanade.tachiyomi.network.NetworkPreferences
|
||||
import eu.kanade.tachiyomi.ui.library.LibraryPresenter
|
||||
import eu.kanade.tachiyomi.ui.recents.RecentsPresenter
|
||||
import eu.kanade.tachiyomi.ui.security.SecureActivityDelegate
|
||||
|
@ -75,6 +76,7 @@ open class App : Application(), DefaultLifecycleObserver, SingletonImageLoader.F
|
|||
|
||||
val preferences: PreferencesHelper by injectLazy()
|
||||
val basePreferences: BasePreferences by injectLazy()
|
||||
val networkPreferences: NetworkPreferences by injectLazy()
|
||||
|
||||
private val disableIncognitoReceiver = DisableIncognitoReceiver()
|
||||
|
||||
|
@ -253,7 +255,7 @@ open class App : Application(), DefaultLifecycleObserver, SingletonImageLoader.F
|
|||
crossfade(true)
|
||||
allowRgb565(this@App.getSystemService<ActivityManager>()!!.isLowRamDevice)
|
||||
allowHardware(true)
|
||||
if (BuildConfig.DEBUG) {
|
||||
if (networkPreferences.verboseLogging().get()) {
|
||||
logger(DebugLogger())
|
||||
}
|
||||
|
||||
|
|
|
@ -4,13 +4,13 @@ import android.app.Application
|
|||
import android.graphics.Bitmap
|
||||
import android.net.Uri
|
||||
import androidx.core.net.toFile
|
||||
import co.touchlab.kermit.Logger
|
||||
import coil3.imageLoader
|
||||
import coil3.request.CachePolicy
|
||||
import coil3.request.ImageRequest
|
||||
import coil3.request.SuccessResult
|
||||
import com.hippo.unifile.UniFile
|
||||
import dev.icerock.moko.resources.StringResource
|
||||
import eu.kanade.tachiyomi.BuildConfig
|
||||
import eu.kanade.tachiyomi.data.cache.CoverCache
|
||||
import eu.kanade.tachiyomi.data.database.DatabaseHelper
|
||||
import eu.kanade.tachiyomi.data.database.models.Category
|
||||
|
@ -35,6 +35,7 @@ import eu.kanade.tachiyomi.data.track.EnhancedTrackService
|
|||
import eu.kanade.tachiyomi.data.track.TrackManager
|
||||
import eu.kanade.tachiyomi.data.track.TrackService
|
||||
import eu.kanade.tachiyomi.domain.manga.models.Manga
|
||||
import eu.kanade.tachiyomi.network.NetworkPreferences
|
||||
import eu.kanade.tachiyomi.source.LocalSource
|
||||
import eu.kanade.tachiyomi.source.Source
|
||||
import eu.kanade.tachiyomi.source.SourceManager
|
||||
|
@ -112,6 +113,8 @@ class MangaDetailsPresenter(
|
|||
private val updateChapter: UpdateChapter by injectLazy()
|
||||
private val updateManga: UpdateManga by injectLazy()
|
||||
|
||||
private val networkPreferences: NetworkPreferences by injectLazy()
|
||||
|
||||
// private val currentMangaInternal: MutableStateFlow<Manga?> = MutableStateFlow(null)
|
||||
// val currentManga get() = currentMangaInternal.asStateFlow()
|
||||
|
||||
|
@ -967,7 +970,7 @@ class MangaDetailsPresenter(
|
|||
DiskUtil.scanMedia(preferences.context, file)
|
||||
true
|
||||
} catch (e: Exception) {
|
||||
if (BuildConfig.DEBUG) e.printStackTrace()
|
||||
if (networkPreferences.verboseLogging().get()) Logger.e(e) { "Unable to save cover" }
|
||||
false
|
||||
}
|
||||
}
|
||||
|
|
|
@ -129,6 +129,12 @@ class SettingsAdvancedController : SettingsLegacyController() {
|
|||
}
|
||||
}
|
||||
|
||||
switchPreference {
|
||||
bindTo(networkPreferences.verboseLogging())
|
||||
titleRes = MR.strings.pref_verbose_logging
|
||||
summaryRes = MR.strings.pref_verbose_logging_summary
|
||||
}
|
||||
|
||||
preference {
|
||||
key = "debug_info"
|
||||
titleRes = MR.strings.pref_debug_info
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
package yokai.core.di
|
||||
|
||||
import android.app.Application
|
||||
import eu.kanade.tachiyomi.BuildConfig
|
||||
import eu.kanade.tachiyomi.core.preference.AndroidPreferenceStore
|
||||
import eu.kanade.tachiyomi.core.preference.PreferenceStore
|
||||
import eu.kanade.tachiyomi.core.security.SecurityPreferences
|
||||
|
@ -39,7 +40,12 @@ class PreferenceModule(val application: Application) : InjektModule {
|
|||
|
||||
addSingletonFactory { DownloadPreferences(get()) }
|
||||
|
||||
addSingletonFactory { NetworkPreferences(get()) }
|
||||
addSingletonFactory {
|
||||
NetworkPreferences(
|
||||
get(),
|
||||
BuildConfig.FLAVOR == "dev" || BuildConfig.DEBUG || BuildConfig.NIGHTLY,
|
||||
)
|
||||
}
|
||||
|
||||
addSingletonFactory { SecurityPreferences(get()) }
|
||||
|
||||
|
|
|
@ -2,7 +2,12 @@ package eu.kanade.tachiyomi.network
|
|||
|
||||
import eu.kanade.tachiyomi.core.preference.PreferenceStore
|
||||
|
||||
class NetworkPreferences(private val preferenceStore: PreferenceStore) {
|
||||
class NetworkPreferences(
|
||||
private val preferenceStore: PreferenceStore,
|
||||
private val verboseLogging: Boolean,
|
||||
) {
|
||||
|
||||
fun verboseLogging() = preferenceStore.getBoolean("verbose_logging", verboseLogging)
|
||||
|
||||
fun dohProvider() = preferenceStore.getInt("doh_provider", -1)
|
||||
|
||||
|
|
|
@ -799,6 +799,8 @@
|
|||
<string name="saves_error_logs">Saves error logs to a file for sharing with the developers</string>
|
||||
<string name="about_dont_kill_my_app">Some manufacturers have additional app restrictions that kill background services. This website has more info on how to fix it.</string>
|
||||
<string name="crash_log_saved">Crash logs saved</string>
|
||||
<string name="pref_verbose_logging">Verbose logging</string>
|
||||
<string name="pref_verbose_logging_summary">Print verbose logs to system log (may reduces app performance)</string>
|
||||
<string name="network">Network</string>
|
||||
<string name="doh">DNS over HTTPS</string>
|
||||
<string name="user_agent_string">Default user agent string</string>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue