Protects this flow against lots of similar emissions

This commit is contained in:
Vitor Pamplona
2025-08-28 14:17:58 -04:00
parent 0dc18cc98c
commit b80685dcfb

View File

@@ -24,6 +24,7 @@ import android.app.Application
import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.flow.SharingStarted import kotlinx.coroutines.flow.SharingStarted
import kotlinx.coroutines.flow.StateFlow import kotlinx.coroutines.flow.StateFlow
import kotlinx.coroutines.flow.distinctUntilChanged
import kotlinx.coroutines.flow.map import kotlinx.coroutines.flow.map
import kotlinx.coroutines.flow.stateIn import kotlinx.coroutines.flow.stateIn
@@ -37,7 +38,7 @@ class ConnectivityManager(
scope: CoroutineScope, scope: CoroutineScope,
) { ) {
val status: StateFlow<ConnectivityStatus> = val status: StateFlow<ConnectivityStatus> =
ConnectivityFlow(app).status.stateIn( ConnectivityFlow(app).status.distinctUntilChanged().stateIn(
scope, scope,
SharingStarted.WhileSubscribed(30000), SharingStarted.WhileSubscribed(30000),
ConnectivityStatus.Off, ConnectivityStatus.Off,