Check if wifi is connected rather than enabled while downloading. (#5967)

* Fixxy Wixxy

* Downgrade check from Android S to Android Q
This commit is contained in:
FourTOne5
2021-10-03 21:27:56 +06:00
committed by GitHub
parent e2da6259e7
commit e22825d818
2 changed files with 21 additions and 2 deletions

View File

@@ -17,6 +17,7 @@ import android.graphics.Color
import android.net.ConnectivityManager
import android.net.NetworkCapabilities
import android.net.Uri
import android.net.wifi.WifiInfo
import android.net.wifi.WifiManager
import android.os.Build
import android.os.PowerManager
@@ -379,6 +380,24 @@ fun Context.isOnline(): Boolean {
return (NetworkCapabilities.TRANSPORT_CELLULAR..maxTransport).any(networkCapabilities::hasTransport)
}
/**
* Returns true if device is connected to wifi.
*/
fun Context.isConnectedToWifi(): Boolean {
if (!wifiManager.isWifiEnabled) return false
val wifiInfo: WifiInfo = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
val activeNetwork = connectivityManager.activeNetwork ?: return false
val networkCapabilities = connectivityManager.getNetworkCapabilities(activeNetwork) ?: return false
networkCapabilities.transportInfo as WifiInfo
} else {
@Suppress("DEPRECATION")
wifiManager.connectionInfo
}
return wifiInfo.bssid != null
}
/**
* Gets document size of provided [Uri]
*