From b4a6c0740019a3f6a956b9eff84e87de6ff4d511 Mon Sep 17 00:00:00 2001 From: Tangem Date: Mon, 30 Dec 2024 17:35:40 +0300 Subject: [PATCH] Updated on 2026-08-14 --- .../java/com/tangem/tap/TangemApplication.kt | 17 +++++++++++++++++ .../datasource/local/logs/AppLogsStore.kt | 6 ++++++ .../local/preferences/PreferencesKeys.kt | 2 ++ 3 files changed, 25 insertions(+) diff --git a/app/src/main/java/com/tangem/tap/TangemApplication.kt b/app/src/main/java/com/tangem/tap/TangemApplication.kt index c3a0c93c7a..d7190e3514 100644 --- a/app/src/main/java/com/tangem/tap/TangemApplication.kt +++ b/app/src/main/java/com/tangem/tap/TangemApplication.kt @@ -28,6 +28,9 @@ import com.tangem.datasource.local.config.environment.EnvironmentConfigStorage import com.tangem.datasource.local.config.issuers.IssuersConfigStorage import com.tangem.datasource.local.logs.AppLogsStore import com.tangem.datasource.local.preferences.AppPreferencesStore +import com.tangem.datasource.local.preferences.PreferencesKeys.WAS_LOG_FILE_CLEARED +import com.tangem.datasource.local.preferences.utils.getSyncOrDefault +import com.tangem.datasource.local.preferences.utils.store import com.tangem.domain.appcurrency.repository.AppCurrencyRepository import com.tangem.domain.apptheme.GetAppThemeModeUseCase import com.tangem.domain.apptheme.repository.AppThemeModeRepository @@ -66,8 +69,12 @@ import com.tangem.wallet.BuildConfig import dagger.hilt.EntryPoints import kotlinx.coroutines.async import kotlinx.coroutines.awaitAll +import kotlinx.coroutines.launch import kotlinx.coroutines.runBlocking import org.rekotlin.Store +import kotlin.collections.MutableMap +import kotlin.collections.listOf +import kotlin.collections.set import com.tangem.tap.domain.walletconnect2.domain.LegacyWalletConnectRepository as WalletConnect2Repository lateinit var store: Store @@ -208,7 +215,17 @@ abstract class TangemApplication : Application(), ImageLoaderFactory { init() + updateLogFiles() + } + + private fun updateLogFiles() { appLogsStore.deleteOldLogsFile() + scope.launch { + if (!appPreferencesStore.getSyncOrDefault(WAS_LOG_FILE_CLEARED, false)) { + appLogsStore.deleteLastLogFile() + appPreferencesStore.store(WAS_LOG_FILE_CLEARED, true) + } + } } fun init() { diff --git a/core/datasource/src/main/java/com/tangem/datasource/local/logs/AppLogsStore.kt b/core/datasource/src/main/java/com/tangem/datasource/local/logs/AppLogsStore.kt index 8a48e755c4..3869ea8162 100644 --- a/core/datasource/src/main/java/com/tangem/datasource/local/logs/AppLogsStore.kt +++ b/core/datasource/src/main/java/com/tangem/datasource/local/logs/AppLogsStore.kt @@ -90,6 +90,12 @@ class AppLogsStore @Inject constructor( if (file.exists()) file.delete() } + fun deleteLastLogFile() { + val file = File(applicationContext.filesDir, NEW_LOG_FILE_NAME) + + if (file.exists()) file.delete() + } + private fun writeMessage(vararg messages: String) { BufferedWriter(FileWriter(file, true)).use { writer -> writer.append(formatter.print(DateTime.now())) diff --git a/core/datasource/src/main/java/com/tangem/datasource/local/preferences/PreferencesKeys.kt b/core/datasource/src/main/java/com/tangem/datasource/local/preferences/PreferencesKeys.kt index 0e9a1885e9..a18f6044f7 100644 --- a/core/datasource/src/main/java/com/tangem/datasource/local/preferences/PreferencesKeys.kt +++ b/core/datasource/src/main/java/com/tangem/datasource/local/preferences/PreferencesKeys.kt @@ -111,6 +111,8 @@ object PreferencesKeys { val IS_GOOGLE_PAY_AVAILABLE_KEY by lazy { booleanPreferencesKey(name = "isGooglePayAvailable") } + val WAS_LOG_FILE_CLEARED by lazy { booleanPreferencesKey(name = "wasLogFileCleared") } + // region Permission fun getShouldShowPermission(permission: String) = booleanPreferencesKey("shouldShowPushPermission_$permission")