Browse Source

Clean up some unnecessary bits

- Remove analytics/crash reporting
- Remove app update check
- Remove F-Droid warning
- Remove Discord references
arkon 1 year ago
parent
commit
33c62ab711
50 changed files with 42 additions and 289 deletions
  1. 1 2
      CODE_OF_CONDUCT.md
  2. 1 1
      CONTRIBUTING.md
  3. 4 6
      README.md
  4. 0 11
      app/build.gradle.kts
  5. 0 4
      app/proguard-rules.pro
  6. 0 10
      app/src/main/AndroidManifest.xml
  7. 0 4
      app/src/main/java/eu/kanade/domain/base/BasePreferences.kt
  8. 1 10
      app/src/main/java/eu/kanade/presentation/more/MoreScreen.kt
  9. 0 7
      app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAdvancedScreen.kt
  10. 0 67
      app/src/main/java/eu/kanade/presentation/more/settings/screen/about/AboutScreen.kt
  11. 0 31
      app/src/main/java/eu/kanade/tachiyomi/App.kt
  12. 0 24
      app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
  13. 0 69
      app/src/standard/google-services.json
  14. 0 1
      build.gradle.kts
  15. 0 7
      gradle/libs.versions.toml
  16. 1 1
      i18n/src/commonMain/resources/MR/base/strings.xml
  17. 1 1
      i18n/src/commonMain/resources/MR/bg/strings.xml
  18. 1 1
      i18n/src/commonMain/resources/MR/ca/strings.xml
  19. 1 1
      i18n/src/commonMain/resources/MR/cs/strings.xml
  20. 1 1
      i18n/src/commonMain/resources/MR/de/strings.xml
  21. 1 1
      i18n/src/commonMain/resources/MR/el/strings.xml
  22. 1 1
      i18n/src/commonMain/resources/MR/es/strings.xml
  23. 1 1
      i18n/src/commonMain/resources/MR/fil/strings.xml
  24. 1 1
      i18n/src/commonMain/resources/MR/fr/strings.xml
  25. 1 1
      i18n/src/commonMain/resources/MR/gl/strings.xml
  26. 1 1
      i18n/src/commonMain/resources/MR/hr/strings.xml
  27. 1 1
      i18n/src/commonMain/resources/MR/hu/strings.xml
  28. 1 1
      i18n/src/commonMain/resources/MR/in/strings.xml
  29. 1 1
      i18n/src/commonMain/resources/MR/it/strings.xml
  30. 1 1
      i18n/src/commonMain/resources/MR/ja/strings.xml
  31. 1 1
      i18n/src/commonMain/resources/MR/kk/strings.xml
  32. 1 1
      i18n/src/commonMain/resources/MR/ko/strings.xml
  33. 1 1
      i18n/src/commonMain/resources/MR/lt/strings.xml
  34. 1 1
      i18n/src/commonMain/resources/MR/lv/strings.xml
  35. 1 1
      i18n/src/commonMain/resources/MR/ms/strings.xml
  36. 1 1
      i18n/src/commonMain/resources/MR/nb-rNO/strings.xml
  37. 1 1
      i18n/src/commonMain/resources/MR/nl/strings.xml
  38. 1 1
      i18n/src/commonMain/resources/MR/pl/strings.xml
  39. 1 1
      i18n/src/commonMain/resources/MR/pt-rBR/strings.xml
  40. 1 1
      i18n/src/commonMain/resources/MR/pt/strings.xml
  41. 1 1
      i18n/src/commonMain/resources/MR/ro/strings.xml
  42. 1 1
      i18n/src/commonMain/resources/MR/ru/strings.xml
  43. 1 1
      i18n/src/commonMain/resources/MR/sc/strings.xml
  44. 1 1
      i18n/src/commonMain/resources/MR/sq/strings.xml
  45. 1 1
      i18n/src/commonMain/resources/MR/sr/strings.xml
  46. 1 1
      i18n/src/commonMain/resources/MR/sv/strings.xml
  47. 1 1
      i18n/src/commonMain/resources/MR/tr/strings.xml
  48. 1 1
      i18n/src/commonMain/resources/MR/uk/strings.xml
  49. 1 1
      i18n/src/commonMain/resources/MR/vi/strings.xml
  50. 1 1
      i18n/src/commonMain/resources/MR/zh-rTW/strings.xml

+ 1 - 2
CODE_OF_CONDUCT.md

@@ -59,8 +59,7 @@ representative at an online or offline event.
 ## Enforcement
 
 Instances of abusive, harassing, or otherwise unacceptable behavior may be
-reported to the community moderators responsible for enforcement at
-the [Tachiyomi Discord server](https://discord.gg/tachiyomi).
+reported to the community moderators via issues.
 All complaints will be reviewed and investigated promptly and fairly.
 
 All community moderators are obligated to respect the privacy and security of the

+ 1 - 1
CONTRIBUTING.md

@@ -30,7 +30,7 @@ To auto-fix some linting errors, run the `ktlintFormat` Gradle task.
 
 ## Getting help
 
-- Join [the Discord server](https://discord.gg/tachiyomi) for online help and to ask questions while developing.
+No support is currently provided.
 
 # Translations
 

+ 4 - 6
README.md

@@ -1,6 +1,6 @@
-| Build | Stable | Weekly Preview | Contribute | Support Server |
-|-------|----------|---------|------------|---------|
-| [![CI](https://github.com/tachiyomiorg/tachiyomi/actions/workflows/build_push.yml/badge.svg)](https://github.com/tachiyomiorg/tachiyomi/actions/workflows/build_push.yml) | [![stable release](https://img.shields.io/github/release/tachiyomiorg/tachiyomi.svg?maxAge=3600&label=download)](https://github.com/tachiyomiorg/tachiyomi/releases) | [![latest preview build](https://img.shields.io/github/v/release/tachiyomiorg/tachiyomi-preview.svg?maxAge=3600&label=download)](https://github.com/tachiyomiorg/tachiyomi-preview/releases) | [![Translation status](https://hosted.weblate.org/widgets/tachiyomi/-/svg-badge.svg)](https://hosted.weblate.org/engage/tachiyomi/?utm_source=widget) | [![Discord](https://img.shields.io/discord/349436576037732353.svg?label=discord&labelColor=7289da&color=2c2f33&style=flat)](https://discord.gg/tachiyomi) |
+| Build | Stable | Weekly Preview | Contribute |
+|-------|--------|----------------|------------|
+| [![CI](https://github.com/tachiyomiorg/tachiyomi/actions/workflows/build_push.yml/badge.svg)](https://github.com/tachiyomiorg/tachiyomi/actions/workflows/build_push.yml) | [![stable release](https://img.shields.io/github/release/tachiyomiorg/tachiyomi.svg?maxAge=3600&label=download)](https://github.com/tachiyomiorg/tachiyomi/releases) | [![latest preview build](https://img.shields.io/github/v/release/tachiyomiorg/tachiyomi-preview.svg?maxAge=3600&label=download)](https://github.com/tachiyomiorg/tachiyomi-preview/releases) | [![Translation status](https://hosted.weblate.org/widgets/tachiyomi/-/svg-badge.svg)](https://hosted.weblate.org/engage/tachiyomi/?utm_source=widget) |
 
 # ![app icon](./.github/readme-images/app-icon.png)Tachiyomi
 Tachiyomi is a free and open source manga reader for Android 6.0 and above.
@@ -28,8 +28,7 @@ Please make sure to read the full guidelines. Your issue may be closed without w
 
 <details><summary>Issues</summary>
 
-1. **Before reporting a new issue, take a look at the [FAQ](https://tachiyomi.org/docs/faq/general), the [changelog](https://tachiyomi.org/changelogs/) and the already opened [issues](https://github.com/tachiyomiorg/tachiyomi/issues).**
-2. If you are unsure, ask here: [![Discord](https://img.shields.io/discord/349436576037732353.svg)](https://discord.gg/tachiyomi)
+**Before reporting a new issue, take a look at the [FAQ](https://tachiyomi.org/docs/faq/general), the [changelog](https://tachiyomi.org/changelogs/) and the already opened [issues](https://github.com/tachiyomiorg/tachiyomi/issues).**
 
 </details>
 
@@ -70,7 +69,6 @@ See [CODE_OF_CONDUCT.md](./CODE_OF_CONDUCT.md).
 ## FAQ
 
 [See our website.](https://tachiyomi.org/)
-You can also reach out to us on [Discord](https://discord.gg/tachiyomi).
 
 ## License
 

+ 0 - 11
app/build.gradle.kts

@@ -8,10 +8,6 @@ plugins {
     id("com.github.zellius.shortcut-helper")
 }
 
-if (gradle.startParameter.taskRequests.toString().contains("Standard")) {
-    apply<com.google.gms.googleservices.GoogleServicesPlugin>()
-}
-
 shortcutHelper.setFilePath("./shortcuts.xml")
 
 val SUPPORTED_ABIS = setOf("armeabi-v7a", "arm64-v8a", "x86", "x86_64")
@@ -31,9 +27,6 @@ android {
         buildConfigField("boolean", "INCLUDE_UPDATER", "false")
         buildConfigField("boolean", "PREVIEW", "false")
 
-        // Please disable ACRA or use your own instance in forked versions of the project
-        buildConfigField("String", "ACRA_URI", "\"https://tachiyomi.kanade.eu/crash_report\"")
-
         ndk {
             abiFilters += SUPPORTED_ABIS
         }
@@ -245,10 +238,6 @@ dependencies {
     // Logging
     implementation(libs.logcat)
 
-    // Crash reports/analytics
-    implementation(libs.bundles.acra)
-    "standardImplementation"(libs.firebase.analytics)
-
     // Shizuku
     implementation(libs.bundles.shizuku)
 

+ 0 - 4
app/proguard-rules.pro

@@ -71,7 +71,3 @@
 
 # XmlUtil
 -keep public enum nl.adaptivity.xmlutil.EventType { *; }
-
-# Firebase
--keep class com.google.firebase.installations.** { *; }
--keep interface com.google.firebase.installations.** { *; }

+ 0 - 10
app/src/main/AndroidManifest.xml

@@ -33,11 +33,6 @@
 
     <uses-permission android:name="android.permission.FOREGROUND_SERVICE_DATA_SYNC" />
 
-    <!-- Remove permission from Firebase dependency -->
-    <uses-permission
-        android:name="com.google.android.gms.permission.AD_ID"
-        tools:node="remove" />
-
     <application
         android:name=".App"
         android:allowBackup="false"
@@ -236,11 +231,6 @@
             android:name="android.webkit.WebView.MetricsOptOut"
             android:value="true" />
 
-        <!-- Disable advertising ID collection for Firebase -->
-        <meta-data
-            android:name="google_analytics_adid_collection_enabled"
-            android:value="false" />
-
     </application>
 
 </manifest>

+ 0 - 4
app/src/main/java/eu/kanade/domain/base/BasePreferences.kt

@@ -2,8 +2,6 @@ package eu.kanade.domain.base
 
 import android.content.Context
 import dev.icerock.moko.resources.StringResource
-import eu.kanade.tachiyomi.util.system.isPreviewBuildType
-import eu.kanade.tachiyomi.util.system.isReleaseBuildType
 import tachiyomi.core.preference.Preference
 import tachiyomi.core.preference.PreferenceStore
 import tachiyomi.i18n.MR
@@ -22,8 +20,6 @@ class BasePreferences(
 
     fun extensionInstaller() = ExtensionInstallerPreference(context, preferenceStore)
 
-    fun acraEnabled() = preferenceStore.getBoolean("acra.enable", isPreviewBuildType || isReleaseBuildType)
-
     fun shownOnboardingFlow() = preferenceStore.getBoolean(Preference.appStateKey("onboarding_complete"), false)
 
     enum class ExtensionInstaller(val titleRes: StringResource, val requiresSystemPermission: Boolean) {

+ 1 - 10
app/src/main/java/eu/kanade/presentation/more/MoreScreen.kt

@@ -1,6 +1,5 @@
 package eu.kanade.presentation.more
 
-import androidx.compose.foundation.clickable
 import androidx.compose.foundation.layout.Column
 import androidx.compose.foundation.layout.WindowInsets
 import androidx.compose.foundation.layout.WindowInsetsSides
@@ -23,7 +22,6 @@ import androidx.compose.ui.Modifier
 import androidx.compose.ui.graphics.vector.ImageVector
 import androidx.compose.ui.platform.LocalUriHandler
 import androidx.compose.ui.res.vectorResource
-import eu.kanade.presentation.components.WarningBanner
 import eu.kanade.presentation.more.settings.widget.SwitchPreferenceWidget
 import eu.kanade.presentation.more.settings.widget.TextPreferenceWidget
 import eu.kanade.tachiyomi.R
@@ -60,14 +58,7 @@ fun MoreScreen(
                 ),
             ) {
                 if (isFDroid) {
-                    WarningBanner(
-                        textRes = MR.strings.fdroid_warning,
-                        modifier = Modifier.clickable {
-                            uriHandler.openUri(
-                                "https://tachiyomi.org/docs/faq/general#how-do-i-update-from-the-f-droid-builds",
-                            )
-                        },
-                    )
+                    // Don't really care about slow updaters now
                 }
             }
         },

+ 0 - 7
app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAdvancedScreen.kt

@@ -48,7 +48,6 @@ import eu.kanade.tachiyomi.ui.more.OnboardingScreen
 import eu.kanade.tachiyomi.util.CrashLogUtil
 import eu.kanade.tachiyomi.util.system.isDevFlavor
 import eu.kanade.tachiyomi.util.system.isPreviewBuildType
-import eu.kanade.tachiyomi.util.system.isReleaseBuildType
 import eu.kanade.tachiyomi.util.system.isShizukuInstalled
 import eu.kanade.tachiyomi.util.system.powerManager
 import eu.kanade.tachiyomi.util.system.setDefaultSettings
@@ -88,12 +87,6 @@ object SettingsAdvancedScreen : SearchableSettings {
         return buildList {
             addAll(
                 listOf(
-                    Preference.PreferenceItem.SwitchPreference(
-                        pref = basePreferences.acraEnabled(),
-                        title = stringResource(MR.strings.pref_enable_acra),
-                        subtitle = stringResource(MR.strings.pref_acra_summary),
-                        enabled = isPreviewBuildType || isReleaseBuildType,
-                    ),
                     Preference.PreferenceItem.TextPreference(
                         title = stringResource(MR.strings.pref_dump_crash_logs),
                         subtitle = stringResource(MR.strings.pref_dump_crash_logs_summary),

+ 0 - 67
app/src/main/java/eu/kanade/presentation/more/settings/screen/about/AboutScreen.kt

@@ -1,15 +1,12 @@
 package eu.kanade.presentation.more.settings.screen.about
 
 import android.content.Context
-import androidx.compose.animation.AnimatedVisibility
 import androidx.compose.foundation.layout.Arrangement
 import androidx.compose.foundation.layout.Row
 import androidx.compose.foundation.layout.fillMaxWidth
 import androidx.compose.foundation.layout.padding
-import androidx.compose.foundation.layout.size
 import androidx.compose.material.icons.Icons
 import androidx.compose.material.icons.outlined.Public
-import androidx.compose.material3.CircularProgressIndicator
 import androidx.compose.runtime.Composable
 import androidx.compose.runtime.getValue
 import androidx.compose.runtime.mutableStateOf
@@ -30,13 +27,10 @@ import eu.kanade.presentation.util.LocalBackPress
 import eu.kanade.presentation.util.Screen
 import eu.kanade.tachiyomi.BuildConfig
 import eu.kanade.tachiyomi.data.updater.AppUpdateChecker
-import eu.kanade.tachiyomi.data.updater.RELEASE_URL
-import eu.kanade.tachiyomi.ui.more.NewUpdateScreen
 import eu.kanade.tachiyomi.util.CrashLogUtil
 import eu.kanade.tachiyomi.util.lang.toDateTimestampString
 import eu.kanade.tachiyomi.util.system.copyToClipboard
 import eu.kanade.tachiyomi.util.system.toast
-import kotlinx.coroutines.launch
 import logcat.LogPriority
 import tachiyomi.core.util.lang.withIOContext
 import tachiyomi.core.util.lang.withUIContext
@@ -48,7 +42,6 @@ import tachiyomi.presentation.core.components.ScrollbarLazyColumn
 import tachiyomi.presentation.core.components.material.Scaffold
 import tachiyomi.presentation.core.i18n.stringResource
 import tachiyomi.presentation.core.icons.CustomIcons
-import tachiyomi.presentation.core.icons.Discord
 import tachiyomi.presentation.core.icons.Facebook
 import tachiyomi.presentation.core.icons.Github
 import tachiyomi.presentation.core.icons.Reddit
@@ -98,61 +91,6 @@ object AboutScreen : Screen() {
                     )
                 }
 
-                if (BuildConfig.INCLUDE_UPDATER) {
-                    item {
-                        TextPreferenceWidget(
-                            title = stringResource(MR.strings.check_for_updates),
-                            widget = {
-                                AnimatedVisibility(visible = isCheckingUpdates) {
-                                    CircularProgressIndicator(
-                                        modifier = Modifier.size(28.dp),
-                                        strokeWidth = 3.dp,
-                                    )
-                                }
-                            },
-                            onPreferenceClick = {
-                                if (!isCheckingUpdates) {
-                                    scope.launch {
-                                        isCheckingUpdates = true
-
-                                        checkVersion(
-                                            context = context,
-                                            onAvailableUpdate = { result ->
-                                                val updateScreen = NewUpdateScreen(
-                                                    versionName = result.release.version,
-                                                    changelogInfo = result.release.info,
-                                                    releaseLink = result.release.releaseLink,
-                                                    downloadLink = result.release.getDownloadLink(),
-                                                )
-                                                navigator.push(updateScreen)
-                                            },
-                                            onFinish = {
-                                                isCheckingUpdates = false
-                                            },
-                                        )
-                                    }
-                                }
-                            },
-                        )
-                    }
-                }
-
-                if (!BuildConfig.DEBUG) {
-                    item {
-                        TextPreferenceWidget(
-                            title = stringResource(MR.strings.whats_new),
-                            onPreferenceClick = { uriHandler.openUri(RELEASE_URL) },
-                        )
-                    }
-                }
-
-                item {
-                    TextPreferenceWidget(
-                        title = stringResource(MR.strings.help_translate),
-                        onPreferenceClick = { uriHandler.openUri("https://tachiyomi.org/docs/contribute#translation") },
-                    )
-                }
-
                 item {
                     TextPreferenceWidget(
                         title = stringResource(MR.strings.licenses),
@@ -179,11 +117,6 @@ object AboutScreen : Screen() {
                             icon = Icons.Outlined.Public,
                             url = "https://tachiyomi.org",
                         )
-                        LinkIcon(
-                            label = "Discord",
-                            icon = CustomIcons.Discord,
-                            url = "https://discord.gg/tachiyomi",
-                        )
                         LinkIcon(
                             label = "X",
                             icon = CustomIcons.X,

+ 0 - 31
app/src/main/java/eu/kanade/tachiyomi/App.kt

@@ -3,7 +3,6 @@ package eu.kanade.tachiyomi
 import android.annotation.SuppressLint
 import android.app.Application
 import android.app.PendingIntent
-import android.app.job.JobInfo
 import android.content.BroadcastReceiver
 import android.content.Context
 import android.content.Intent
@@ -42,8 +41,6 @@ import eu.kanade.tachiyomi.util.system.DeviceUtil
 import eu.kanade.tachiyomi.util.system.WebViewUtil
 import eu.kanade.tachiyomi.util.system.animatorDurationScale
 import eu.kanade.tachiyomi.util.system.cancelNotification
-import eu.kanade.tachiyomi.util.system.isPreviewBuildType
-import eu.kanade.tachiyomi.util.system.isReleaseBuildType
 import eu.kanade.tachiyomi.util.system.notify
 import kotlinx.coroutines.Dispatchers
 import kotlinx.coroutines.flow.launchIn
@@ -51,13 +48,8 @@ import kotlinx.coroutines.flow.onEach
 import logcat.AndroidLogcatLogger
 import logcat.LogPriority
 import logcat.LogcatLogger
-import org.acra.config.httpSender
-import org.acra.config.scheduler
-import org.acra.ktx.initAcra
-import org.acra.sender.HttpSender
 import org.conscrypt.Conscrypt
 import tachiyomi.core.i18n.stringResource
-import tachiyomi.core.preference.Preference
 import tachiyomi.core.util.system.logcat
 import tachiyomi.i18n.MR
 import tachiyomi.presentation.widget.WidgetManager
@@ -94,7 +86,6 @@ class App : Application(), DefaultLifecycleObserver, ImageLoaderFactory {
         Injekt.importModule(AppModule(this))
         Injekt.importModule(DomainModule())
 
-        setupAcra()
         setupNotificationChannels()
 
         ProcessLifecycleOwner.get().lifecycle.addObserver(this)
@@ -198,28 +189,6 @@ class App : Application(), DefaultLifecycleObserver, ImageLoaderFactory {
         return super.getPackageName()
     }
 
-    private fun setupAcra() {
-        if (isPreviewBuildType || isReleaseBuildType) {
-            initAcra {
-                buildConfigClass = BuildConfig::class.java
-                excludeMatchingSharedPreferencesKeys = listOf(
-                    Preference.privateKey(".*"), ".*username.*", ".*password.*", ".*token.*",
-                )
-
-                httpSender {
-                    uri = BuildConfig.ACRA_URI
-                    httpMethod = HttpSender.Method.PUT
-                }
-
-                scheduler {
-                    requiresBatteryNotLow = true
-                    requiresDeviceIdle = true
-                    requiresNetworkType = JobInfo.NETWORK_TYPE_UNMETERED
-                }
-            }
-        }
-    }
-
     private fun setupNotificationChannels() {
         try {
             Notifications.createChannels(this)

+ 0 - 24
app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt

@@ -65,7 +65,6 @@ import eu.kanade.tachiyomi.Migrations
 import eu.kanade.tachiyomi.data.cache.ChapterCache
 import eu.kanade.tachiyomi.data.download.DownloadCache
 import eu.kanade.tachiyomi.data.notification.NotificationReceiver
-import eu.kanade.tachiyomi.data.updater.AppUpdateChecker
 import eu.kanade.tachiyomi.data.updater.RELEASE_URL
 import eu.kanade.tachiyomi.extension.api.ExtensionApi
 import eu.kanade.tachiyomi.ui.base.activity.BaseActivity
@@ -74,7 +73,6 @@ import eu.kanade.tachiyomi.ui.browse.source.globalsearch.GlobalSearchScreen
 import eu.kanade.tachiyomi.ui.deeplink.DeepLinkScreen
 import eu.kanade.tachiyomi.ui.home.HomeScreen
 import eu.kanade.tachiyomi.ui.manga.MangaScreen
-import eu.kanade.tachiyomi.ui.more.NewUpdateScreen
 import eu.kanade.tachiyomi.ui.more.OnboardingScreen
 import eu.kanade.tachiyomi.util.system.dpToPx
 import eu.kanade.tachiyomi.util.system.isNavigationBarNeedsScrim
@@ -93,7 +91,6 @@ import tachiyomi.core.Constants
 import tachiyomi.core.util.lang.launchIO
 import tachiyomi.core.util.system.logcat
 import tachiyomi.domain.library.service.LibraryPreferences
-import tachiyomi.domain.release.interactor.GetApplicationRelease
 import tachiyomi.i18n.MR
 import tachiyomi.presentation.core.components.material.Scaffold
 import tachiyomi.presentation.core.i18n.stringResource
@@ -314,27 +311,6 @@ class MainActivity : BaseActivity() {
     @Composable
     private fun CheckForUpdates() {
         val context = LocalContext.current
-        val navigator = LocalNavigator.currentOrThrow
-
-        // App updates
-        LaunchedEffect(Unit) {
-            if (BuildConfig.INCLUDE_UPDATER) {
-                try {
-                    val result = AppUpdateChecker().checkForUpdate(context)
-                    if (result is GetApplicationRelease.Result.NewUpdate) {
-                        val updateScreen = NewUpdateScreen(
-                            versionName = result.release.version,
-                            changelogInfo = result.release.info,
-                            releaseLink = result.release.releaseLink,
-                            downloadLink = result.release.getDownloadLink(),
-                        )
-                        navigator.push(updateScreen)
-                    }
-                } catch (e: Exception) {
-                    logcat(LogPriority.ERROR, e)
-                }
-            }
-        }
 
         // Extensions updates
         LaunchedEffect(Unit) {

+ 0 - 69
app/src/standard/google-services.json

@@ -1,69 +0,0 @@
-{
-  "project_info": {
-    "project_number": "777921915939",
-    "firebase_url": "https://tachiyomi-47364.firebaseio.com",
-    "project_id": "tachiyomi-47364",
-    "storage_bucket": "tachiyomi-47364.appspot.com"
-  },
-  "client": [
-    {
-      "client_info": {
-        "mobilesdk_app_id": "1:777921915939:android:36544cd2d96c50c7",
-        "android_client_info": {
-          "package_name": "eu.kanade.tachiyomi"
-        }
-      },
-      "oauth_client": [
-        {
-          "client_id": "777921915939-9q25jvgbdtpk91daqlk7sa1cbdcg77o6.apps.googleusercontent.com",
-          "client_type": 3
-        }
-      ],
-      "api_key": [
-        {
-          "current_key": "AIzaSyAHr8RxyeiSPC_MxJTnivz-hmdo5oX0QQQ"
-        }
-      ],
-      "services": {
-        "appinvite_service": {
-          "other_platform_oauth_client": [
-            {
-              "client_id": "777921915939-9q25jvgbdtpk91daqlk7sa1cbdcg77o6.apps.googleusercontent.com",
-              "client_type": 3
-            }
-          ]
-        }
-      }
-    },
-    {
-      "client_info": {
-        "mobilesdk_app_id": "1:777921915939:android:564fdc1d62efd1de",
-        "android_client_info": {
-          "package_name": "eu.kanade.tachiyomi.debug"
-        }
-      },
-      "oauth_client": [
-        {
-          "client_id": "777921915939-9q25jvgbdtpk91daqlk7sa1cbdcg77o6.apps.googleusercontent.com",
-          "client_type": 3
-        }
-      ],
-      "api_key": [
-        {
-          "current_key": "AIzaSyAHr8RxyeiSPC_MxJTnivz-hmdo5oX0QQQ"
-        }
-      ],
-      "services": {
-        "appinvite_service": {
-          "other_platform_oauth_client": [
-            {
-              "client_id": "777921915939-9q25jvgbdtpk91daqlk7sa1cbdcg77o6.apps.googleusercontent.com",
-              "client_type": 3
-            }
-          ]
-        }
-      }
-    }
-  ],
-  "configuration_version": "1"
-}

+ 0 - 1
build.gradle.kts

@@ -6,7 +6,6 @@ import org.jetbrains.kotlin.gradle.tasks.KotlinJvmCompile
 buildscript {
     dependencies {
         classpath(libs.android.shortcut.gradle)
-        classpath(libs.google.services.gradle)
         classpath(libs.aboutLibraries.gradle)
         classpath(libs.sqldelight.gradle)
         classpath(libs.moko.gradle)

+ 0 - 7
gradle/libs.versions.toml

@@ -1,6 +1,5 @@
 [versions]
 aboutlib_version = "10.10.0"
-acra = "5.11.3"
 leakcanary = "2.13"
 moko = "0.23.0"
 okhttp_version = "5.0.0-alpha.12"
@@ -13,7 +12,6 @@ voyager = "1.0.0"
 [libraries]
 desugar = "com.android.tools:desugar_jdk_libs:2.0.4"
 android-shortcut-gradle = "com.github.zellius:android-shortcut-gradle-plugin:0.1.2"
-google-services-gradle = "com.google.gms:google-services:4.4.0"
 
 rxjava = "io.reactivex:rxjava:1.3.8"
 
@@ -68,10 +66,6 @@ moko-gradle = { module = "dev.icerock.moko:resources-generator", version.ref = "
 
 logcat = "com.squareup.logcat:logcat:0.1"
 
-acra-http = { module = "ch.acra:acra-http", version.ref = "acra" }
-acra-scheduler = { module = "ch.acra:acra-advanced-scheduler", version.ref = "acra" }
-firebase-analytics = "com.google.firebase:firebase-analytics-ktx:21.5.0"
-
 aboutLibraries-gradle = { module = "com.mikepenz.aboutlibraries.plugin:aboutlibraries-plugin", version.ref = "aboutlib_version" }
 aboutLibraries-compose = { module = "com.mikepenz:aboutlibraries-compose-m3", version.ref = "aboutlib_version" }
 
@@ -99,7 +93,6 @@ voyager-transitions = { module = "cafe.adriel.voyager:voyager-transitions", vers
 ktlint = "org.jlleitschuh.gradle:ktlint-gradle:12.0.3"
 
 [bundles]
-acra = ["acra-http", "acra-scheduler"]
 okhttp = ["okhttp-core", "okhttp-logging", "okhttp-brotli", "okhttp-dnsoverhttps"]
 js-engine = ["quickjs-android"]
 sqlite = ["sqlite-framework", "sqlite-ktx", "sqlite-android"]

+ 1 - 1
i18n/src/commonMain/resources/MR/base/strings.xml

@@ -809,7 +809,7 @@
 
     <!-- Crash screen -->
     <string name="crash_screen_title">Whoops!</string>
-    <string name="crash_screen_description">%s ran into an unexpected error. We suggest you share the crash logs in our support channel on Discord.</string>
+    <string name="crash_screen_description">%s ran into an unexpected error.</string>
     <string name="crash_screen_restart_application">Restart the application</string>
 
     <!-- Stats screen -->

+ 1 - 1
i18n/src/commonMain/resources/MR/bg/strings.xml

@@ -575,7 +575,7 @@
     <string name="are_you_sure">Сигурни ли сте\?</string>
     <string name="popular">Популярни</string>
     <string name="unfinished_list">Списък с незавършени</string>
-    <string name="crash_screen_description">%s се сблъска с неочаквана грешка. Препоръчваме да заснемете това съобщение, да запазите записите от крашовете и да ги споделите в нашия канал за поддръжка в Discord.</string>
+    <string name="crash_screen_description">%s се сблъска с неочаквана грешка.</string>
     <string name="updates_last_update_info">Последно обновяване на библиотеката: %1$s</string>
     <string name="reading_list">Списък за четене</string>
     <string name="cant_open_last_read_chapter">Не може да се отвори последната прочетена глава</string>

+ 1 - 1
i18n/src/commonMain/resources/MR/ca/strings.xml

@@ -625,7 +625,7 @@
     <string name="auto_download_while_reading">Baixa automàticament mentre es llegeix</string>
     <string name="download_ahead_info">Només funciona si el capítol actual i el següent ja estan baixats.</string>
     <string name="crash_screen_title">Ups!</string>
-    <string name="crash_screen_description">S’ha produït un error inesperat al %s. Us suggerim que compartiu el registre d’errors al nostre canal d’assistència al Discord.</string>
+    <string name="crash_screen_description">S’ha produït un error inesperat al %s.</string>
     <string name="missing_storage_permission">No s’han concedit permisos d’emmagatzematge</string>
     <string name="popular">Populars</string>
     <string name="pref_backup_summary">Còpies de seguretat automàtiques i manuals i espai d’emmagatzematge</string>

+ 1 - 1
i18n/src/commonMain/resources/MR/cs/strings.xml

@@ -637,7 +637,7 @@
     <string name="pref_browse_summary">Zdroje, rozšíření, globální vyhledávání</string>
     <string name="pref_security_summary">Zámek aplikace, zabezpečená obrazovka</string>
     <string name="pref_advanced_summary">Výpis protokolů selhání, optimalizace baterie</string>
-    <string name="crash_screen_description">%s narazil na neočekávanou chybu. Doporučujeme vám sdílet protokoly o selhání a poté je sdílet v našem kanálu podpory na Discordu.</string>
+    <string name="crash_screen_description">%s narazil na neočekávanou chybu.</string>
     <string name="crash_screen_restart_application">Restartujte aplikaci</string>
     <string name="pref_backup_summary">Ruční a automatické zálohování, místo v úložišti</string>
     <string name="crash_screen_title">Ups!</string>

+ 1 - 1
i18n/src/commonMain/resources/MR/de/strings.xml

@@ -639,7 +639,7 @@
     <string name="crash_screen_title">Ups!</string>
     <string name="pref_advanced_summary">Absturzprotokolle ausgeben, Akkuverbrauch-Optimierung</string>
     <string name="pref_backup_summary">Manuelle und automatische Datensicherungen, Speicherplatz</string>
-    <string name="crash_screen_description">%s ist auf einen unerwarteten Fehler gestoßen. Wir empfehlen dir, die Absturzprotokolle in unserem Support-Kanal auf Discord zu teilen.</string>
+    <string name="crash_screen_description">%s ist auf einen unerwarteten Fehler gestoßen.</string>
     <string name="pref_security_summary">App-Sperre, sicherer Bildschirm</string>
     <string name="unknown_title">Unbekannter Titel</string>
     <string name="invalid_location">Ungültiger Speicherort: %s</string>

+ 1 - 1
i18n/src/commonMain/resources/MR/el/strings.xml

@@ -640,7 +640,7 @@
     <string name="crash_screen_restart_application">Επανεκκίνηση της εφαρμογής</string>
     <string name="pref_downloads_summary">Αυτόματη λήψη, λήψη εκ των προτέρων</string>
     <string name="pref_advanced_summary">Αρχεία καταγραφής σφαλμάτων, βελτιστοποιήσεις μπαταρίας</string>
-    <string name="crash_screen_description">Το %s αντιμετώπισε ένα απροσδόκητο σφάλμα. Σας προτείνουμε να μοιραστείτε τα αρχεία καταγραφής σφαλμάτων στο κανάλι υποστήριξης μας στο Discord.</string>
+    <string name="crash_screen_description">Το %s αντιμετώπισε ένα απροσδόκητο σφάλμα.</string>
     <string name="unknown_title">Άγνωστος τίτλος</string>
     <string name="invalid_location">Μη έγκυρη τοποθεσία: %s</string>
     <string name="error_user_agent_string_invalid">Μη έγκυρη συμβολοσειρά πράκτορα χρήστη</string>

+ 1 - 1
i18n/src/commonMain/resources/MR/es/strings.xml

@@ -632,7 +632,7 @@
     <string name="pref_tracking_summary">Sincroniza tu progreso de lectura; unidireccional o mejorada</string>
     <string name="pref_downloads_summary">Descargas automáticas y por adelantado</string>
     <string name="pref_library_summary">Categorías, actualizaciones generales y acciones al deslizar el dedo</string>
-    <string name="crash_screen_description">%s se ha cerrado por un problema inesperado. Te sugerimos que compartas todos tus registros de depuración, enviándolos a nuestro canal de apoyo en Discord, en inglés.</string>
+    <string name="crash_screen_description">%s se ha cerrado por un problema inesperado.</string>
     <string name="pref_reader_summary">Modos de lectura, apariencia y navegación</string>
     <string name="pref_appearance_summary">Temas de colores y formatos de fecha</string>
     <string name="pref_advanced_summary">Volcar datos del cuelgue y estado de ahorro de batería</string>

+ 1 - 1
i18n/src/commonMain/resources/MR/fil/strings.xml

@@ -638,7 +638,7 @@
     <string name="pref_advanced_summary">Itambak ang mga crash log, pag-o-optimisa sa baterya</string>
     <string name="pref_library_summary">Mga kategorya, panlahatang update, pag-swipe ng kabanata</string>
     <string name="pref_browse_summary">Mga source, extension, panlahatang paghanap</string>
-    <string name="crash_screen_description">Nagkaroon ng hindi inaasahang error ang %s. Iminumungkahi naming ibahagi mo ang mga crash log sa aming support channel sa Discord.</string>
+    <string name="crash_screen_description">Nagkaroon ng hindi inaasahang error ang %s.</string>
     <string name="crash_screen_title">Ay!</string>
     <string name="crash_screen_restart_application">Buksan muli ang app</string>
     <string name="invalid_location">Invalid na lugar: %s</string>

+ 1 - 1
i18n/src/commonMain/resources/MR/fr/strings.xml

@@ -640,7 +640,7 @@
     <string name="pref_library_summary">Catégories, mise à jour globale, faire glisser le chapitre</string>
     <string name="pref_reader_summary">Mode de lecture, affichage, navigation</string>
     <string name="pref_security_summary">Verrouillage des applications, écran sécurisé</string>
-    <string name="crash_screen_description">%s a rencontré une erreur inattendue. Nous vous suggérons de nous partager les rapports de plantage dans notre salon d\'assistance sur Discord.</string>
+    <string name="crash_screen_description">%s a rencontré une erreur inattendue.</string>
     <string name="invalid_location">Emplacement invalide : %s</string>
     <string name="error_user_agent_string_invalid">Chaîne d\'agent utilisateur invalide</string>
     <string name="unknown_title">Titre inconnu</string>

+ 1 - 1
i18n/src/commonMain/resources/MR/gl/strings.xml

@@ -584,7 +584,7 @@
     <string name="manga_tracking_tab">En seguimento</string>
     <string name="reading">Lendo</string>
     <string name="download_notifier_text_only_wifi">Non hai ningunha conexión Wi-Fi dispoñible</string>
-    <string name="crash_screen_description">%s pechouse por un problema inesperado. Aconsellámoste que compartas os rexistros de erros na canle de soporte no Discord (en inglés).</string>
+    <string name="crash_screen_description">%s pechouse por un problema inesperado.</string>
     <string name="crash_screen_restart_application">Reinicia a aplicación</string>
     <string name="source_filter_empty_screen">Non se atopou ninguna fonte instalada</string>
     <string name="download_queue_size_warning">Advertencia: As baixadas grandes poden facer que as fontes se volvan máis lentas e/ou bloqueen Tachiyomi. Preme para saber máis.</string>

+ 1 - 1
i18n/src/commonMain/resources/MR/hr/strings.xml

@@ -641,7 +641,7 @@
     <string name="unknown_title">Nepoznat naslov</string>
     <string name="updates_last_update_info">Zadnje aktualiziranje biblioteke: %s</string>
     <string name="are_you_sure">Sigurno\?</string>
-    <string name="crash_screen_description">%s je naišao na neočekivanu grešku. Predlažemo da podijeliš zapis o prekidu programa u našem kanalu za podršku na Discordu.</string>
+    <string name="crash_screen_description">%s je naišao na neočekivanu grešku.</string>
     <string name="label_overview_section">Pregled</string>
     <string name="label_completed_titles">Dovršene stavke</string>
     <string name="label_read_duration">Trajanje čitanja</string>

+ 1 - 1
i18n/src/commonMain/resources/MR/hu/strings.xml

@@ -677,7 +677,7 @@
     <string name="pref_debug_info">Debug információ</string>
     <string name="popular">Felkapott</string>
     <string name="update_already_running">A frissités már folyamatban van</string>
-    <string name="crash_screen_description">%s hibába ütközött. A hiba üzenetet kérünk oszd meg velünk a Discord szerverünkön.</string>
+    <string name="crash_screen_description">%s hibába ütközött.</string>
     <string name="track_remove_date_conf_title">Dátum eltávolítása\?</string>
     <string name="crash_screen_restart_application">Applikáció újrainditása</string>
     <string name="label_titles_in_global_update">Globális frissités</string>

+ 1 - 1
i18n/src/commonMain/resources/MR/in/strings.xml

@@ -632,7 +632,7 @@
     <string name="pref_browse_summary">Sumber, ekstensi, pencarian global</string>
     <string name="pref_reader_summary">Mode membaca, tampilan, navigasi</string>
     <string name="pref_tracking_summary">Sinkronisasi progres searah, sinkronisasi yang ditingkatkan</string>
-    <string name="crash_screen_description">%s mengalami kesalahan tak terduga. Kami menyarankan Anda membagi log kerusakan di saluran dukungan kami di Discord.</string>
+    <string name="crash_screen_description">%s mengalami kesalahan tak terduga.</string>
     <string name="pref_downloads_summary">Unduh otomatis, unduh terlebih dahulu</string>
     <string name="pref_security_summary">Kunci aplikasi, amankan layar</string>
     <string name="pref_appearance_summary">Tema, format tanggal &amp; waktu</string>

+ 1 - 1
i18n/src/commonMain/resources/MR/it/strings.xml

@@ -634,7 +634,7 @@
     <string name="skipped_reason_not_always_update">Saltato perché la serie non richiede aggiornamenti</string>
     <string name="action_search_hint">Ricerca…</string>
     <string name="pref_appearance_summary">Tema, formato data e ora</string>
-    <string name="crash_screen_description">%s ha riscontrato un errore imprevisto. Ti suggeriamo di condividere il registro degli arresti anomali nel nostro canale di supporto su Discord.</string>
+    <string name="crash_screen_description">%s ha riscontrato un errore imprevisto.</string>
     <string name="pref_library_summary">Categorie, aggiornamenti globali, azioni di scorrimento capitoli</string>
     <string name="pref_downloads_summary">Download automatico, download anticipato</string>
     <string name="pref_browse_summary">Fonti, estensioni, ricerca globale</string>

+ 1 - 1
i18n/src/commonMain/resources/MR/ja/strings.xml

@@ -629,7 +629,7 @@
     <string name="missing_storage_permission">ストレージ権限を持っていません</string>
     <string name="skipped_reason_not_always_update">シリーズは更新を必要としないため、スキップされました</string>
     <string name="action_search_hint">検索…</string>
-    <string name="crash_screen_description">%sでは予期せぬエラーが発生しました。お手数ですが、クラッシュ ログを Discord のサポート チャネルで共有するようお願い致します。</string>
+    <string name="crash_screen_description">%sでは予期せぬエラーが発生しました。</string>
     <string name="invalid_location">無効な場所: %s</string>
     <string name="unknown_title">不明なタイトル</string>
     <string name="error_user_agent_string_invalid">ユーザー エージェント文字列が無効です</string>

+ 1 - 1
i18n/src/commonMain/resources/MR/kk/strings.xml

@@ -573,7 +573,7 @@
     <string name="file_select_cover">Мұқаба таңдау</string>
     <string name="file_select_backup">Сақтық көшірме файлын таңдау</string>
     <string name="crash_screen_title">Ойбай!</string>
-    <string name="crash_screen_description">%s күтпеген қатеге ұшырады. Жаңылыс журналдарын Discord сайтындағы қолдау арнамызда ортақ пайдалануды ұсынамыз.</string>
+    <string name="crash_screen_description">%s күтпеген қатеге ұшырады.</string>
     <string name="crash_screen_restart_application">Қолданбаны өшіріп қосу</string>
     <string name="download_queue_error">Тараулар жүктелмеді. Жүктеулер кезегіне барып, сол жерден байқап көре аласыз</string>
     <string name="download_insufficient_space">Жадта орын аз болғандықтан тараулар жүктелмейді</string>

+ 1 - 1
i18n/src/commonMain/resources/MR/ko/strings.xml

@@ -640,7 +640,7 @@
     <string name="pref_downloads_summary">자동 다운로드, 미리 다운로드</string>
     <string name="crash_screen_title">앗!</string>
     <string name="crash_screen_restart_application">애플리케이션 재시작</string>
-    <string name="crash_screen_description">%s에 예기치 않은 오류가 발생했습니다. 충돌 로그를 공식 디스코드 채널에 공유하는 것을 추천합니다.</string>
+    <string name="crash_screen_description">%s에 예기치 않은 오류가 발생했습니다.</string>
     <string name="unknown_title">알 수 없는 제목</string>
     <string name="invalid_location">잘못된 위치: %s</string>
     <string name="error_user_agent_string_invalid">잘못된 사용자 에이전트 문자열</string>

+ 1 - 1
i18n/src/commonMain/resources/MR/lt/strings.xml

@@ -644,7 +644,7 @@
     <string name="error_user_agent_string_invalid">Netinkama naudotojo agento eilutė</string>
     <string name="unknown_title">Nežinomas pavadinimas</string>
     <string name="updates_last_update_info_just_now">Ką tik</string>
-    <string name="crash_screen_description">%s susidūrė su netikėta klaida. Siūlome padaryti šio pranešimo ekrano nuotrauką, išsisaugoti gedimų žurnalus ir pasidalyti tuo mūsų „Discord“ palaikymo kanale.</string>
+    <string name="crash_screen_description">%s susidūrė su netikėta klaida.</string>
     <string name="are_you_sure">Ar esate tikri\?</string>
     <string name="popular">Populiaru</string>
     <string name="crash_screen_title">Ups!</string>

+ 1 - 1
i18n/src/commonMain/resources/MR/lv/strings.xml

@@ -671,7 +671,7 @@
     <string name="delete_category_confirmation">Vai vēlaties dzēst kategoriju \"%s\"\?</string>
     <string name="track_error">%1$s kļūda: %2$s</string>
     <string name="update_already_running">Atjauninājums jau darbojas</string>
-    <string name="crash_screen_description">%s radās neparedzēta kļūda. Mēs iesakām dalīties ar avārijas žurnālu mūsu atbalsta kanālā Discord lietotnē.</string>
+    <string name="crash_screen_description">%s radās neparedzēta kļūda.</string>
     <string name="pref_page_rotate">Pagrieziet platas lapas, lai tās ietilptu</string>
     <string name="pref_page_rotate_invert">Apvērst orientācija pagrieztām platām lapām</string>
     <string name="split_tall_images">Sadalīt augstus attēlus</string>

+ 1 - 1
i18n/src/commonMain/resources/MR/ms/strings.xml

@@ -640,7 +640,7 @@
     <string name="crash_screen_title">Aduhai!</string>
     <string name="crash_screen_restart_application">Mulakan semula aplikasi</string>
     <string name="pref_browse_summary">Sumber, sambungan, carian keseluruhan</string>
-    <string name="crash_screen_description">%s mengalami ralat tidak dijangka. Kami mencadangkan anda untuk kongsi log kerosakan pada Discord kami di saluran bantuan.</string>
+    <string name="crash_screen_description">%s mengalami ralat tidak dijangka.</string>
     <string name="unknown_title">Tajuk tidak diketahui</string>
     <string name="invalid_location">Lokasi tidak sah: %s</string>
     <string name="error_user_agent_string_invalid">Rentetan ejen pengguna tidak sah</string>

+ 1 - 1
i18n/src/commonMain/resources/MR/nb-rNO/strings.xml

@@ -623,7 +623,7 @@
     <string name="delete_category">Slett kategori</string>
     <string name="internal_error">InternalError: Sjekk krasjlogger for mer informasjon</string>
     <string name="crash_screen_title">Oops!</string>
-    <string name="crash_screen_description">%s fikk en uventet feil. Vi foreslår at du deler krasjloggene i vår støttekanal på Discord.</string>
+    <string name="crash_screen_description">%s fikk en uventet feil.</string>
     <string name="pref_app_language">Appspråk</string>
     <string name="description_placeholder">Ingen beskrivelse</string>
     <string name="action_search_hint">Søk…</string>

+ 1 - 1
i18n/src/commonMain/resources/MR/nl/strings.xml

@@ -668,7 +668,7 @@
     <string name="track_remove_start_date_conf_text">Dit gaat je eerder geselcteerde startdatum %s verwijderen</string>
     <string name="delete_downloaded">Download verwijderen</string>
     <string name="skipped_reason_not_always_update">Overgeslagen omdat serie geen updates vereist.</string>
-    <string name="crash_screen_description">%s is een onverwachte fout tegengekomen. We raden u aan de crashlogboeken te delen in ons ondersteuningskanaal op Discord.</string>
+    <string name="crash_screen_description">%s is een onverwachte fout tegengekomen.</string>
     <string name="pref_debug_info">Foutopsporingsinformatie</string>
     <string name="label_completed_titles">Voltooide titels</string>
     <string name="pref_update_only_in_release_period">Buiten verwachte vrijgave periode</string>

+ 1 - 1
i18n/src/commonMain/resources/MR/pl/strings.xml

@@ -635,7 +635,7 @@
     <string name="label_local">Lokalne</string>
     <string name="label_downloaded">Pobrane</string>
     <string name="pref_invalidate_download_cache_summary">Wymuś ponowne sprawdzenie pobranych rozdziałów przez aplikację</string>
-    <string name="crash_screen_description">%s napotkał nieoczekiwany błąd. Sugerujemy podzielenie się logami crasha, a następnie udostępnienie ich na naszym kanale wsparcia na Discordzie.</string>
+    <string name="crash_screen_description">%s napotkał nieoczekiwany błąd.</string>
     <string name="pref_reader_summary">Tryb czytania, wyświetl, nawigacja</string>
     <string name="invalid_location">Nieprawidłowa lokalizacja: %s</string>
     <string name="action_display_show_continue_reading_button">Przycisk wznów czytanie</string>

+ 1 - 1
i18n/src/commonMain/resources/MR/pt-rBR/strings.xml

@@ -640,7 +640,7 @@
     <string name="pref_advanced_summary">Exportar registros de travamento, otimizações de bateria</string>
     <string name="crash_screen_title">Ooops!</string>
     <string name="crash_screen_restart_application">Reiniciar o aplicativo</string>
-    <string name="crash_screen_description">%s teve um erro inesperado. Nós sugerimos que você compartilhe os registros de travamento em nosso canal de suporte no Discord.</string>
+    <string name="crash_screen_description">%s teve um erro inesperado.</string>
     <string name="unknown_title">Título desconhecido</string>
     <string name="invalid_location">Local inválido: %s</string>
     <string name="error_user_agent_string_invalid">Valor de user agent inválido</string>

+ 1 - 1
i18n/src/commonMain/resources/MR/pt/strings.xml

@@ -651,7 +651,7 @@
     <string name="updates_last_update_info_just_now">Agora mesmo</string>
     <string name="crash_screen_restart_application">Reinicie o aplicativo</string>
     <string name="crash_screen_title">Ops!</string>
-    <string name="crash_screen_description">%s encontrou um erro inesperado. Sugerimos que você compartilhe os registros de falha em nosso canal de suporte no Discord.</string>
+    <string name="crash_screen_description">%s encontrou um erro inesperado.</string>
     <string name="pref_downloads_summary">Descarga automática, descarga a frente</string>
     <string name="pref_tracking_summary">Sincronização de progresso unidirecional, sincronização aprimorada</string>
     <string name="pref_browse_summary">Fontes, extensões, pesquisa global</string>

+ 1 - 1
i18n/src/commonMain/resources/MR/ro/strings.xml

@@ -633,7 +633,7 @@
     <string name="pref_reset_user_agent_string">Restabilirea șirului implicit de agent al utilizatorului</string>
     <string name="updates_last_update_info_just_now">Chiar acum</string>
     <string name="pref_verbose_logging">Consemnare verbală</string>
-    <string name="crash_screen_description">%s a întâmpinat o eroare neașteptată. Vă sugerăm să faceți o captură de ecran a acestui mesaj, să descărcați registrele de erori și apoi să le partajați prin intermediul canalului nostru de asistență pe Discord.</string>
+    <string name="crash_screen_description">%s a întâmpinat o eroare neașteptată.</string>
     <string name="appwidget_unavailable_locked">Widgetul nu este disponibil atunci când este activată blocarea aplicației</string>
     <string name="pref_appearance_summary">Tema, formatul datei și al orei</string>
     <string name="pref_library_summary">Categorii, actualizări globale</string>

+ 1 - 1
i18n/src/commonMain/resources/MR/ru/strings.xml

@@ -640,7 +640,7 @@
     <string name="pref_security_summary">Блокировка приложения, защита экрана</string>
     <string name="pref_advanced_summary">Выгрузка журнала с ошибками, оптимизация батареи</string>
     <string name="crash_screen_title">Ой, ошибочка вышла!</string>
-    <string name="crash_screen_description">%s столкнулось с непредвиденной ошибкой. Мы рекомендуем поделиться журналом с ошибками в нашем Discord сервере в ветке support.</string>
+    <string name="crash_screen_description">%s столкнулось с непредвиденной ошибкой.</string>
     <string name="unknown_title">Неизвестное название</string>
     <string name="invalid_location">Недопустимое расположение: %s</string>
     <string name="error_user_agent_string_invalid">Недопустимый параметр user agent</string>

+ 1 - 1
i18n/src/commonMain/resources/MR/sc/strings.xml

@@ -633,7 +633,7 @@
     <string name="missing_storage_permission">Permissu de archiviatzione non cuntzessu</string>
     <string name="skipped_reason_not_always_update">Brincadu ca sa sèrie non tenet bisòngiu de agiornamentos</string>
     <string name="action_search_hint">Chirca…</string>
-    <string name="crash_screen_description">%s at tentu un\'errore non prevìdidu. Ti cussigiamus de cumpartzire sos registros de sas serraduras anòmalas in su canale de suportu nostru de Discord.</string>
+    <string name="crash_screen_description">%s at tentu un\'errore non prevìdidu.</string>
     <string name="crash_screen_restart_application">Torra a allùghere s\'aplicatzione</string>
     <string name="pref_appearance_summary">Tema, data e formadu de s\'ora</string>
     <string name="pref_library_summary">Categorias, agiornamentos globales, iscurrimentu de capìtulos</string>

+ 1 - 1
i18n/src/commonMain/resources/MR/sq/strings.xml

@@ -614,7 +614,7 @@
     <string name="migration_help_guide">Udhëzuesi i migrimit të burimit</string>
     <string name="migration_selection_prompt">Zgjidhni një burim për të migruar</string>
     <string name="migrate">Migroni</string>
-    <string name="crash_screen_description">%s hasi në një gabim të papritur. Ne ju sugjerojmë që të fotografoni këtë mesazh, të hidhni regjistrat e aksidenteve dhe më pas ta shpërndani në kanalin tonë të mbështetjes në Discord.</string>
+    <string name="crash_screen_description">%s hasi në një gabim të papritur.</string>
     <string name="crash_screen_restart_application">Rinisni aplikacionin</string>
     <string name="download_insufficient_space">Kapitujt nuk mund të shkarkoheshin për shkak të hapësirës së ulët të ruajtjes</string>
     <string name="download_queue_size_warning">Paralajmërim: shkarkimet e mëdha me shumicë mund të çojnë në ngadalësimin e burimeve dhe/ose bllokimin e Tachiyomi. Trokit për të mësuar më shumë.</string>

+ 1 - 1
i18n/src/commonMain/resources/MR/sr/strings.xml

@@ -594,7 +594,7 @@
     <string name="pref_reset_viewer_flags_success">Сва подешавања читача су ресетована</string>
     <string name="pref_invalidate_download_cache_summary">Присили апликацију да поново провери преузета поглавља</string>
     <string name="not_installed">Није инсталирано</string>
-    <string name="crash_screen_description">%s је наишао на неочекивану грешку. Предлажемо да поделите запис о прекиду програма на нашем каналу за подршку на Discord-у.</string>
+    <string name="crash_screen_description">%s је наишао на неочекивану грешку.</string>
     <string name="appwidget_unavailable_locked">Widget није доступан када је омогућено закључавање апликације</string>
     <string name="pref_library_update_show_tab_badge">Прокажи број непрочитаних на икони ажурирања</string>
     <string name="wish_list">Листа жеља</string>

+ 1 - 1
i18n/src/commonMain/resources/MR/sv/strings.xml

@@ -638,7 +638,7 @@
     <string name="invalid_location">Ogiltig plats: %s</string>
     <string name="missing_storage_permission">Lagrings rättigheter inte tillagda</string>
     <string name="skipped_reason_not_always_update">Hoppat över för att serien inte behöver uppdateras</string>
-    <string name="crash_screen_description">%s stötte på ett oväntat fel. Vi föreslår att du delar med dig av kraschloggen i vår supportkanal på Discord.</string>
+    <string name="crash_screen_description">%s stötte på ett oväntat fel.</string>
     <string name="pref_appearance_summary">Tema, datum och tids format</string>
     <string name="pref_browse_summary">Källor, tillägg, global sökning</string>
     <string name="crash_screen_restart_application">Starta om applikationen</string>

+ 1 - 1
i18n/src/commonMain/resources/MR/tr/strings.xml

@@ -640,7 +640,7 @@
     <string name="pref_tracking_summary">Tek yönlü ilerleme eşitlemesi, gelişmiş eşitleme</string>
     <string name="crash_screen_restart_application">Uygulamayı yeniden başlat</string>
     <string name="crash_screen_title">Tüh!</string>
-    <string name="crash_screen_description">%s beklenmeyen bir hatayla karşılaştı. Çökme günlüklerini Discord\'daki destek kanalımızda paylaşmanızı öneririz.</string>
+    <string name="crash_screen_description">%s beklenmeyen bir hatayla karşılaştı.</string>
     <string name="unknown_title">Bilinmeyen başlık</string>
     <string name="invalid_location">Geçersiz konum: %s</string>
     <string name="error_user_agent_string_invalid">Geçersiz kullanıcı aracısı dizgesi</string>

+ 1 - 1
i18n/src/commonMain/resources/MR/uk/strings.xml

@@ -627,7 +627,7 @@
     <string name="error_user_agent_string_blank">Рядок User agent не може бути пустим</string>
     <string name="popular">Популярне</string>
     <string name="auto_download_while_reading">Автоматичне завантаження під час читання</string>
-    <string name="crash_screen_description">%s зіткнулися з неочікуваною помилкою. Ми пропонуємо вам поділитися журналами збоїв у нашому каналі підтримки на Discord.</string>
+    <string name="crash_screen_description">%s зіткнулися з неочікуваною помилкою.</string>
     <string name="pref_appearance_summary">Тема, формат дати та часу</string>
     <string name="pref_library_summary">Категорії, глобальне оновлення, гортання розділів</string>
     <string name="pref_reader_summary">Режим читання, відображення, навігація</string>

+ 1 - 1
i18n/src/commonMain/resources/MR/vi/strings.xml

@@ -680,7 +680,7 @@
     <string name="pref_hide_in_library_items">Giấu những truyện đã có trong thư viện</string>
     <string name="minute_short">%d phút</string>
     <string name="download_notifier_cache_renewal">Đang kiểm tra những truyện đã tải xuống</string>
-    <string name="crash_screen_description">%s đã có lỗi. Bạn nên chia sẻ tệp báo lỗi tạm ở trong kênh hỗ trợ của chúng tôi trên Discord.</string>
+    <string name="crash_screen_description">%s đã có lỗi.</string>
     <string name="action_update_category">Cập nhật danh mục</string>
     <string name="confirm_add_duplicate_manga">Truyện này đã có sẵn trong thư viện bạn. 
 \n

+ 1 - 1
i18n/src/commonMain/resources/MR/zh-rTW/strings.xml

@@ -638,7 +638,7 @@
     <string name="pref_advanced_summary">傾印當機記錄、電池效能最佳化</string>
     <string name="crash_screen_restart_application">重新啟動應用程式</string>
     <string name="crash_screen_title">哎呀!</string>
-    <string name="crash_screen_description">「%s」發生了未預期的錯誤。我們建議你將當機記錄分享至我們位於 Discord 上的 support 頻道。</string>
+    <string name="crash_screen_description">「%s」發生了未預期的錯誤。</string>
     <string name="pref_library_summary">類別、全域更新、目錄滑動動作</string>
     <string name="pref_browse_summary">來源、擴充套件、全域搜尋</string>
     <string name="invalid_location">無效的位置:%s</string>