diff options
Diffstat (limited to 'android/lib')
| -rw-r--r-- | android/lib/talpid/src/main/kotlin/net/mullvad/talpid/ConnectivityListener.kt | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/android/lib/talpid/src/main/kotlin/net/mullvad/talpid/ConnectivityListener.kt b/android/lib/talpid/src/main/kotlin/net/mullvad/talpid/ConnectivityListener.kt index 4cb67f9945..729145d2a9 100644 --- a/android/lib/talpid/src/main/kotlin/net/mullvad/talpid/ConnectivityListener.kt +++ b/android/lib/talpid/src/main/kotlin/net/mullvad/talpid/ConnectivityListener.kt @@ -5,6 +5,7 @@ import android.net.LinkProperties import android.net.Network import android.net.NetworkCapabilities import android.net.NetworkRequest +import co.touchlab.kermit.Logger import java.net.InetAddress import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.flow.Flow @@ -45,6 +46,7 @@ class ConnectivityListener(val connectivityManager: ConnectivityManager) { connectivityManager .defaultNetworkFlow() .filterIsInstance<NetworkEvent.LinkPropertiesChanged>() + .onEach { Logger.d("Link properties changed") } .map { it.linkProperties.dnsServersWithoutFallback() } private fun currentDnsServers(): List<InetAddress> = @@ -66,11 +68,18 @@ class ConnectivityListener(val connectivityManager: ConnectivityManager) { .networkFlow(request) .scan(setOf<Network>()) { networks, event -> when (event) { - is NetworkEvent.Available -> networks + event.network - is NetworkEvent.Lost -> networks - event.network + is NetworkEvent.Available -> { + Logger.d("Network available ${event.network}") + networks + event.network + } + is NetworkEvent.Lost -> { + Logger.d("Network lost ${event.network}") + networks - event.network + } else -> networks } } + .onEach { Logger.d("Number of networks: ${it.size}") } .map { it.isNotEmpty() } .distinctUntilChanged() } |
