Updated on 2026-08-14

This commit is contained in:
Tangem 2024-04-25 15:15:08 +03:00
parent 06a8fa700b
commit 52306efb20
5 changed files with 18 additions and 12 deletions

View file

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<base-config cleartextTrafficPermitted="true">
<base-config cleartextTrafficPermitted="false">
<trust-anchors>
<certificates src="user" />
<certificates src="system" />
<certificates src="user" />
</trust-anchors>
</base-config>
</network-security-config>

View file

@ -1,9 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<base-config cleartextTrafficPermitted="true">
<base-config cleartextTrafficPermitted="false">
<trust-anchors>
<certificates src="user" />
<certificates src="system" />
<certificates src="user" />
</trust-anchors>
</base-config>
</network-security-config>

View file

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<base-config cleartextTrafficPermitted="true">
<base-config cleartextTrafficPermitted="false">
<trust-anchors>
<certificates src="user" />
<certificates src="system" />
<certificates src="user" />
</trust-anchors>
</base-config>
</network-security-config>

View file

@ -1,11 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<base-config cleartextTrafficPermitted="true" />
<domain-config>
<domain includeSubdomains="true">api.tangem.com</domain>
<base-config cleartextTrafficPermitted="false">
<trust-anchors>
<certificates src="user" />
<certificates src="system" />
</trust-anchors>
</domain-config>
</base-config>
</network-security-config>

View file

@ -13,6 +13,7 @@ import kotlinx.coroutines.flow.StateFlow
import kotlinx.coroutines.flow.stateIn
import kotlinx.coroutines.reactive.asFlow
private const val PING_SERVER = "https://clients3.google.com/generate_204"
private const val PING_INTERVAL = 5_000
internal class RealInternetConnectionManager : NetworkConnectionManager {
@ -24,7 +25,12 @@ internal class RealInternetConnectionManager : NetworkConnectionManager {
private val initialNetworkResult: Boolean by lazy {
ReactiveNetwork
.checkInternetConnectivity()
.checkInternetConnectivity(
InternetObservingSettings.builder()
.host(PING_SERVER)
.port(443)
.build(),
)
.subscribeOn(Schedulers.io())
.observeOn(Schedulers.io())
.blockingGet()
@ -33,6 +39,8 @@ internal class RealInternetConnectionManager : NetworkConnectionManager {
override val isOnlineFlow: StateFlow<Boolean> = ReactiveNetwork
.observeInternetConnectivity(
InternetObservingSettings.builder()
.host(PING_SERVER)
.port(443)
.interval(PING_INTERVAL)
.build(),
)