From 43b4354719f81a04e1198d1b64c3e614f54bf2da Mon Sep 17 00:00:00 2001 From: Tangem Date: Tue, 30 Dec 2025 15:05:21 +0300 Subject: [PATCH 1/4] Updated on 2026-08-14 --- .../features/biometry/impl/model/AskBiometryModel.kt | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/features/biometry/impl/src/main/kotlin/com/tangem/features/biometry/impl/model/AskBiometryModel.kt b/features/biometry/impl/src/main/kotlin/com/tangem/features/biometry/impl/model/AskBiometryModel.kt index 2d586fad73..1f8093ed68 100644 --- a/features/biometry/impl/src/main/kotlin/com/tangem/features/biometry/impl/model/AskBiometryModel.kt +++ b/features/biometry/impl/src/main/kotlin/com/tangem/features/biometry/impl/model/AskBiometryModel.kt @@ -116,9 +116,11 @@ internal class AskBiometryModel @Inject constructor( walletsRepository.setUseBiometricAuthentication(value = true) walletsRepository.setRequireAccessCode(value = false) setBiometryLockForAllWallets() - cardSdkConfigRepository.setAccessCodeRequestPolicy( - isBiometricsRequestPolicy = walletsRepository.requireAccessCode().not(), - ) + if (userWallet is UserWallet.Cold) { + cardSdkConfigRepository.setAccessCodeRequestPolicy( + isBiometricsRequestPolicy = userWallet.hasAccessCode, + ) + } } else { settingsRepository.setShouldSaveAccessCodes(value = true) if (userWallet is UserWallet.Cold) { From 4691835739c095b1ff024fa507f0d50b5f415741 Mon Sep 17 00:00:00 2001 From: Tangem Date: Tue, 30 Dec 2025 16:44:56 +0300 Subject: [PATCH 2/4] Updated on 2026-08-14 --- .../handlers/appsflyer/AppsFlyerAnalyticsClient.kt | 14 +++++++++++--- .../appsflyer/AppsFlyerAnalyticsHandler.kt | 12 +++++++----- 2 files changed, 18 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/com/tangem/tap/common/analytics/handlers/appsflyer/AppsFlyerAnalyticsClient.kt b/app/src/main/java/com/tangem/tap/common/analytics/handlers/appsflyer/AppsFlyerAnalyticsClient.kt index 755f393182..7fab19081f 100644 --- a/app/src/main/java/com/tangem/tap/common/analytics/handlers/appsflyer/AppsFlyerAnalyticsClient.kt +++ b/app/src/main/java/com/tangem/tap/common/analytics/handlers/appsflyer/AppsFlyerAnalyticsClient.kt @@ -2,16 +2,17 @@ package com.tangem.tap.common.analytics.handlers.appsflyer import android.content.Context import com.appsflyer.AppsFlyerLib +import com.appsflyer.attribution.AppsFlyerRequestListener import com.tangem.core.analytics.api.EventLogger import com.tangem.core.analytics.api.UserIdHolder import com.tangem.tap.common.analytics.handlers.firebase.UnderscoreAnalyticsEventConverter +import timber.log.Timber interface AppsFlyerAnalyticsClient : EventLogger, UserIdHolder internal class AppsFlyerClient( private val context: Context, key: String, - appId: String, ) : AppsFlyerAnalyticsClient { private val appsFlyerLib: AppsFlyerLib = AppsFlyerLib.getInstance() @@ -19,8 +20,15 @@ internal class AppsFlyerClient( init { appsFlyerLib.init(key, null, context) - appsFlyerLib.setAppId(appId) - appsFlyerLib.start(context) + appsFlyerLib.start(context, key, object : AppsFlyerRequestListener { + override fun onSuccess() { + Timber.d("AppsFlyer initialized successfully") + } + + override fun onError(p0: Int, p1: String) { + Timber.e("AppsFlyer initialization error: $p0, $p1") + } + }) } override fun setUserId(userId: String) { diff --git a/app/src/main/java/com/tangem/tap/common/analytics/handlers/appsflyer/AppsFlyerAnalyticsHandler.kt b/app/src/main/java/com/tangem/tap/common/analytics/handlers/appsflyer/AppsFlyerAnalyticsHandler.kt index d9f80b3476..cda56807ee 100644 --- a/app/src/main/java/com/tangem/tap/common/analytics/handlers/appsflyer/AppsFlyerAnalyticsHandler.kt +++ b/app/src/main/java/com/tangem/tap/common/analytics/handlers/appsflyer/AppsFlyerAnalyticsHandler.kt @@ -40,10 +40,12 @@ class AppsFlyerAnalyticsHandler( } class Builder : AnalyticsHandlerBuilder { - override fun build(data: AnalyticsHandlerBuilder.Data): AnalyticsHandler? = when { - !data.isDebug -> AppsFlyerClient(data.application, data.config.appsFlyerApiKey, data.config.appsAppId) - data.isDebug && data.logConfig.isAppsflyerLogEnabled -> AppsFlyerLogClient(data.jsonConverter) - else -> null - }?.let { AppsFlyerAnalyticsHandler(it) } + override fun build(data: AnalyticsHandlerBuilder.Data): AnalyticsHandler = AppsFlyerAnalyticsHandler( + client = if (data.logConfig.isAppsflyerLogEnabled) { + AppsFlyerLogClient(data.jsonConverter) + } else { + AppsFlyerClient(data.application, data.config.appsFlyerApiKey) + }, + ) } } \ No newline at end of file From 03cdfcfede22a32ba2790301acb5a04e54abf681 Mon Sep 17 00:00:00 2001 From: Tangem Date: Wed, 31 Dec 2025 15:28:15 +0500 Subject: [PATCH 3/4] Updated on 2026-08-14 --- .../com/tangem/data/pay/DefaultTangemPayEligibilityManager.kt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/data/visa/src/main/kotlin/com/tangem/data/pay/DefaultTangemPayEligibilityManager.kt b/data/visa/src/main/kotlin/com/tangem/data/pay/DefaultTangemPayEligibilityManager.kt index 7ccc87275c..9c27024b35 100644 --- a/data/visa/src/main/kotlin/com/tangem/data/pay/DefaultTangemPayEligibilityManager.kt +++ b/data/visa/src/main/kotlin/com/tangem/data/pay/DefaultTangemPayEligibilityManager.kt @@ -10,6 +10,7 @@ import com.tangem.domain.pay.repository.OnboardingRepository import com.tangem.domain.wallets.legacy.UserWalletsListManager import com.tangem.features.hotwallet.HotWalletFeatureToggles import com.tangem.features.tangempay.TangemPayFeatureToggles +import com.tangem.hot.sdk.model.HotWalletId import com.tangem.utils.coroutines.CoroutineDispatcherProvider import kotlinx.coroutines.* import kotlinx.coroutines.flow.collectLatest @@ -87,7 +88,7 @@ internal class DefaultTangemPayEligibilityManager @Inject constructor( private fun UserWallet.isCompatible(): Boolean = when (this) { is UserWallet.Cold -> scanResponse.card.firmwareVersion >= FirmwareVersion.HDWalletAvailable - is UserWallet.Hot -> true + is UserWallet.Hot -> hotWalletId.authType != HotWalletId.AuthType.NoPassword } private suspend fun List.addPaeraCustomersData(): List { From cc0faf389608c5f324f96403af9a945e1d87a4ac Mon Sep 17 00:00:00 2001 From: Tangem Date: Wed, 31 Dec 2025 10:28:33 +0000 Subject: [PATCH 4/4] Updated on 2026-08-14 --- gradle/tangem_dependencies.toml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gradle/tangem_dependencies.toml b/gradle/tangem_dependencies.toml index 21f77fa638..36965eb1e1 100644 --- a/gradle/tangem_dependencies.toml +++ b/gradle/tangem_dependencies.toml @@ -5,9 +5,9 @@ # https://github.com/tangem/tangem-sdk-android/ # https://github.com/tangem/vico -tangemBlockchainSdk = "releases-5.32-1335" +tangemBlockchainSdk = "develop-1330" #tangemBlockchainSdk = "0.0.1" # Keep it! - used for local builds -tangemCardSdk = "releases-5.32-574" +tangemCardSdk = "develop-573" #tangemCardSdk = "0.0.1" # Keep it! - used for local builds ^ tangemVico = "2.0.0-alpha.25-tangem12" #tangemVico = "0.0.1" # Keep it! - used for local builds ^