Updated on 2026-08-14

This commit is contained in:
Tangem 2023-09-14 14:25:21 +03:00
parent 1b395e28d2
commit cd152b1af3
2 changed files with 6 additions and 5 deletions

View file

@ -20,17 +20,18 @@ import javax.inject.Singleton
internal class DefaultCardSdkProvider @Inject constructor() : CardSdkProvider, CardSdkLifecycleObserver {
override val sdk: TangemSdk
get() = requireNotNull(value = _sdk?.get()) { "Impossible to get the TangemSdk when activity is destroyed" }
get() = requireNotNull(value = _sdk) { "Impossible to get the TangemSdk when activity is destroyed" }
private var _sdk: WeakReference<TangemSdk?>? = null
private var _sdk: TangemSdk? = null
override fun onCreate(context: Context) {
_sdk = WeakReference(TangemSdk.initWithBiometrics(activity = context as FragmentActivity, config = config))
_sdk = TangemSdk.initWithBiometrics(activity = context as FragmentActivity, config = config)
}
override fun onDestroy(context: Context) {
// Commented out to prevent crash on getting sdk when it's null.
// FIXME: We still should find the real cause and fix it properly.
// idea: pass everywhere DefaultCardSdkProvider instead sdk to reach lazy access to sdk property
// _sdk = null
}