Adjust Wi-Fi connection check (related to #6038)
This commit is contained in:
parent
f5b591430c
commit
e863e8c64b
@ -29,6 +29,7 @@ import kotlinx.coroutines.flow.launchIn
|
|||||||
import kotlinx.coroutines.flow.onEach
|
import kotlinx.coroutines.flow.onEach
|
||||||
import ru.beryukhov.reactivenetwork.ReactiveNetwork
|
import ru.beryukhov.reactivenetwork.ReactiveNetwork
|
||||||
import rx.subscriptions.CompositeSubscription
|
import rx.subscriptions.CompositeSubscription
|
||||||
|
import timber.log.Timber
|
||||||
import uy.kohesive.injekt.injectLazy
|
import uy.kohesive.injekt.injectLazy
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -140,8 +141,9 @@ class DownloadService : Service() {
|
|||||||
onNetworkStateChanged()
|
onNetworkStateChanged()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.catch {
|
.catch { error ->
|
||||||
withUIContext {
|
withUIContext {
|
||||||
|
Timber.e(error)
|
||||||
toast(R.string.download_queue_error)
|
toast(R.string.download_queue_error)
|
||||||
stopSelf()
|
stopSelf()
|
||||||
}
|
}
|
||||||
|
@ -17,7 +17,6 @@ import android.graphics.Color
|
|||||||
import android.net.ConnectivityManager
|
import android.net.ConnectivityManager
|
||||||
import android.net.NetworkCapabilities
|
import android.net.NetworkCapabilities
|
||||||
import android.net.Uri
|
import android.net.Uri
|
||||||
import android.net.wifi.WifiInfo
|
|
||||||
import android.net.wifi.WifiManager
|
import android.net.wifi.WifiManager
|
||||||
import android.os.Build
|
import android.os.Build
|
||||||
import android.os.PowerManager
|
import android.os.PowerManager
|
||||||
@ -381,21 +380,21 @@ fun Context.isOnline(): Boolean {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns true if device is connected to wifi.
|
* Returns true if device is connected to Wifi.
|
||||||
*/
|
*/
|
||||||
fun Context.isConnectedToWifi(): Boolean {
|
fun Context.isConnectedToWifi(): Boolean {
|
||||||
if (!wifiManager.isWifiEnabled) return false
|
if (!wifiManager.isWifiEnabled) return false
|
||||||
|
|
||||||
val wifiInfo: WifiInfo = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
|
return if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
|
||||||
val activeNetwork = connectivityManager.activeNetwork ?: return false
|
val activeNetwork = connectivityManager.activeNetwork ?: return false
|
||||||
val networkCapabilities = connectivityManager.getNetworkCapabilities(activeNetwork) ?: return false
|
val networkCapabilities = connectivityManager.getNetworkCapabilities(activeNetwork) ?: return false
|
||||||
networkCapabilities.transportInfo as WifiInfo
|
|
||||||
|
networkCapabilities.hasTransport(NetworkCapabilities.TRANSPORT_WIFI) &&
|
||||||
|
networkCapabilities.hasCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET)
|
||||||
} else {
|
} else {
|
||||||
@Suppress("DEPRECATION")
|
@Suppress("DEPRECATION")
|
||||||
wifiManager.connectionInfo
|
wifiManager.connectionInfo.bssid != null
|
||||||
}
|
}
|
||||||
|
|
||||||
return wifiInfo.bssid != null
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Loading…
Reference in New Issue
Block a user