diff --git a/app/src/main/assets/tangem-app-config b/app/src/main/assets/tangem-app-config index 8c1c53b739..b791bd4cf6 160000 --- a/app/src/main/assets/tangem-app-config +++ b/app/src/main/assets/tangem-app-config @@ -1 +1 @@ -Subproject commit 8c1c53b73950698d4acfa4d925b8c14bf6f0da63 +Subproject commit b791bd4cf6c5eca9778f89e87cd62b72d24f5ce9 diff --git a/app/src/main/java/com/tangem/tap/common/chat/opener/implementation/ZendeskChatOpener.kt b/app/src/main/java/com/tangem/tap/common/chat/opener/implementation/ZendeskChatOpener.kt index 1c6198806c..a65749ce62 100644 --- a/app/src/main/java/com/tangem/tap/common/chat/opener/implementation/ZendeskChatOpener.kt +++ b/app/src/main/java/com/tangem/tap/common/chat/opener/implementation/ZendeskChatOpener.kt @@ -22,6 +22,7 @@ internal class ZendeskChatOpener( ) : ChatOpener { private var isInitialized = false + private var isFilesSent = false override fun open(createFeedbackFile: (Context) -> File?, createLogsFile: (Context) -> File?) { foregroundActivityObserver.withForegroundActivity { activity -> @@ -49,18 +50,20 @@ internal class ZendeskChatOpener( } private fun sendFeedbackFile(feedbackFile: File?) { - if (isInitialized && feedbackFile != null) { + if (isInitialized && feedbackFile != null && !isFilesSent) { Chat.INSTANCE.providers()?.chatProvider()?.sendFile(feedbackFile) { _, bytesUploaded, _ -> Timber.d("Log file sent", "bytesUploaded: $bytesUploaded") } + isFilesSent = true } } private fun sendLogsFile(logsFile: File?) { - if (isInitialized && logsFile != null) { + if (isInitialized && logsFile != null && !isFilesSent) { Chat.INSTANCE.providers()?.chatProvider()?.sendFile(logsFile) { _, bytesUploaded, _ -> Timber.d("Log file sent", "bytesUploaded: $bytesUploaded") } + isFilesSent = true } } diff --git a/app/src/main/java/com/tangem/tap/common/feedback/FeedbackManager.kt b/app/src/main/java/com/tangem/tap/common/feedback/FeedbackManager.kt index c1e9ae43b1..83a14893d8 100644 --- a/app/src/main/java/com/tangem/tap/common/feedback/FeedbackManager.kt +++ b/app/src/main/java/com/tangem/tap/common/feedback/FeedbackManager.kt @@ -63,8 +63,12 @@ class FeedbackManager( fileWriter.write(feedback) fileWriter.close() - sessionFeedbackFile = file - sessionFeedbackFile + if (file.exists()) { + sessionFeedbackFile = file + sessionFeedbackFile + } else { + null + } } catch (ex: Exception) { Timber.e(ex, "Can't create the logs file") null @@ -86,8 +90,12 @@ class FeedbackManager( fileWriter.write(stringWriter.toString()) fileWriter.close() logCollector.clearLogs() - sessionLogsFile = file - sessionLogsFile + if (file.exists()) { + sessionLogsFile = file + sessionLogsFile + } else { + null + } } catch (ex: Exception) { Timber.e(ex, "Can't create the logs file") null diff --git a/app/src/main/java/com/tangem/tap/domain/walletconnect2/data/WalletConnectRepositoryImpl.kt b/app/src/main/java/com/tangem/tap/domain/walletconnect2/data/WalletConnectRepositoryImpl.kt index c0755f9bd9..da78bbdf84 100644 --- a/app/src/main/java/com/tangem/tap/domain/walletconnect2/data/WalletConnectRepositoryImpl.kt +++ b/app/src/main/java/com/tangem/tap/domain/walletconnect2/data/WalletConnectRepositoryImpl.kt @@ -303,16 +303,19 @@ class WalletConnectRepositoryImpl @Inject constructor( override fun sendRequest(requestData: RequestData, result: String) { val session = currentSessions.find { it.topic == requestData.topic } - analyticsHandler.send( - WalletConnect.RequestHandled( - WalletConnect.RequestHandledParams( - dAppName = session?.name ?: "", - dAppUrl = session?.url ?: "", - methodName = requestData.method, - blockchain = requestData.blockchain, + // Add Ethereum Chain method is processed without user input, skip logging it + if (requestData.method != WcJrpcMethods.WALLET_ADD_ETHEREUM_CHAIN.code) { + analyticsHandler.send( + WalletConnect.RequestHandled( + WalletConnect.RequestHandledParams( + dAppName = session?.name ?: "", + dAppUrl = session?.url ?: "", + methodName = requestData.method, + blockchain = requestData.blockchain, + ), ), - ), - ) + ) + } Web3Wallet.respondSessionRequest( params = Wallet.Params.SessionRequestResponse( sessionTopic = requestData.topic, diff --git a/core/featuretoggles/src/main/assets/configs/feature_toggles_config.json b/core/featuretoggles/src/main/assets/configs/feature_toggles_config.json index b2d4da3602..8cd92e9d2f 100644 --- a/core/featuretoggles/src/main/assets/configs/feature_toggles_config.json +++ b/core/featuretoggles/src/main/assets/configs/feature_toggles_config.json @@ -9,7 +9,7 @@ }, { "name": "NEW_CARD_SCANNING_ENABLED", - "version": "4.10.0" + "version": "4.11.0" }, { "name": "REDESIGNED_WALLET_SCREEN_ENABLED", @@ -17,7 +17,7 @@ }, { "name": "1INCH_LEARN_2_EARN_ENABLED", - "version": "4.9.0" + "version": "undefined" }, { "name": "REDESIGNED_TOKEN_DETAIL_SCREEN_ENABLED", diff --git a/domain/legacy/src/main/java/com/tangem/domain/common/extensions/Blockchain.kt b/domain/legacy/src/main/java/com/tangem/domain/common/extensions/Blockchain.kt index 590f740d1a..1910997a9f 100644 --- a/domain/legacy/src/main/java/com/tangem/domain/common/extensions/Blockchain.kt +++ b/domain/legacy/src/main/java/com/tangem/domain/common/extensions/Blockchain.kt @@ -227,4 +227,6 @@ private val excludedBlockchains = listOf( Blockchain.Ducatus, Blockchain.Telos, // disable in 4.9 Blockchain.TelosTestnet, // disable in 4.9 + Blockchain.OctaSpace, + Blockchain.OctaSpaceTestnet, ) \ No newline at end of file diff --git a/gradle/dependencies.toml b/gradle/dependencies.toml index 8bab2c5ac9..1058197b94 100644 --- a/gradle/dependencies.toml +++ b/gradle/dependencies.toml @@ -80,7 +80,7 @@ okHttp-prettyLogging = "3.1.0" # endregion Other libraries # region Tangem -tangemBlockchainSdk = "develop-313" +tangemBlockchainSdk = "develop-314" #tangemBlockchainSdk = "0.0.1" # Keep it! - used for local builds tangemCardSdk = "develop-288" #tangemCardSdk = "0.0.1" # Keep it! - used for local builds