From 37fa8e4ae21a4f279b3d015a0033609af9e8367a Mon Sep 17 00:00:00 2001 From: SessionHero01 <180888785+SessionHero01@users.noreply.github.com> Date: Thu, 6 Mar 2025 13:41:09 +1100 Subject: [PATCH] Update to what counts as connected --- .../securesms/util/NetworkConnectivity.kt | 25 +++++-------------- 1 file changed, 6 insertions(+), 19 deletions(-) diff --git a/app/src/main/java/org/thoughtcrime/securesms/util/NetworkConnectivity.kt b/app/src/main/java/org/thoughtcrime/securesms/util/NetworkConnectivity.kt index 027f916325..c2a288c049 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/util/NetworkConnectivity.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/util/NetworkConnectivity.kt @@ -6,7 +6,6 @@ import android.content.Context.CONNECTIVITY_SERVICE import android.net.ConnectivityManager import android.net.ConnectivityManager.NetworkCallback import android.net.Network -import android.net.NetworkCapabilities import kotlinx.coroutines.GlobalScope import kotlinx.coroutines.channels.awaitClose import kotlinx.coroutines.flow.SharingStarted @@ -27,15 +26,11 @@ class NetworkConnectivity @Inject constructor(application: Application) { val connectivityManager = application.getSystemService(ConnectivityManager::class.java) val callback = object : NetworkCallback() { - override fun onCapabilitiesChanged( - network: Network, - networkCapabilities: NetworkCapabilities - ) { - super.onCapabilitiesChanged(network, networkCapabilities) - val hasInternet = - networkCapabilities.hasCapability(NetworkCapabilities.NET_CAPABILITY_VALIDATED) - Log.v("InternetConnectivity", "Network capabilities changed: hasInternet? $hasInternet") - trySend(hasInternet) + override fun onAvailable(network: Network) { + super.onAvailable(network) + + Log.v("InternetConnectivity", "Network become available") + trySend(true) } override fun onLost(network: Network) { @@ -62,15 +57,7 @@ class NetworkConnectivity @Inject constructor(application: Application) { private fun haveValidNetworkConnection(context: Context): Boolean { val cm = context.getSystemService(CONNECTIVITY_SERVICE) as ConnectivityManager - // Early exit if we have no active network.. - val activeNetwork = cm.activeNetwork ?: return false - - // ..otherwise determine what capabilities are available to the active network. - val networkCapabilities = cm.getNetworkCapabilities(activeNetwork) - val internetConnectionValid = networkCapabilities != null && - networkCapabilities.hasCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET) - - return internetConnectionValid + return cm.activeNetwork != null } }