mirror of
https://github.com/signalapp/Signal-Android.git
synced 2025-12-20 11:08:31 +00:00
committed by
jeffrey-signal
parent
30e43e99fc
commit
ba63a5255d
@@ -19,8 +19,32 @@ public final class NetworkUtil {
|
|||||||
private NetworkUtil() {}
|
private NetworkUtil() {}
|
||||||
|
|
||||||
public static boolean isConnectedWifi(@NonNull Context context) {
|
public static boolean isConnectedWifi(@NonNull Context context) {
|
||||||
final NetworkInfo info = getNetworkInfo(context);
|
ConnectivityManager connectivityManager = ServiceUtil.getConnectivityManager(context);
|
||||||
return info != null && info.isConnected() && info.getType() == ConnectivityManager.TYPE_WIFI;
|
Network activeNetwork = connectivityManager.getActiveNetwork();
|
||||||
|
|
||||||
|
if (activeNetwork == null) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
NetworkCapabilities capabilities = connectivityManager.getNetworkCapabilities(activeNetwork);
|
||||||
|
if (capabilities == null) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (capabilities.hasTransport(NetworkCapabilities.TRANSPORT_WIFI)) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (capabilities.hasTransport(NetworkCapabilities.TRANSPORT_VPN)) {
|
||||||
|
for (Network underlyingNetwork : connectivityManager.getAllNetworks()) {
|
||||||
|
NetworkCapabilities underlyingCapabilities = connectivityManager.getNetworkCapabilities(underlyingNetwork);
|
||||||
|
if (underlyingCapabilities != null && underlyingCapabilities.hasTransport(NetworkCapabilities.TRANSPORT_WIFI)) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static boolean isConnectedMobile(@NonNull Context context) {
|
public static boolean isConnectedMobile(@NonNull Context context) {
|
||||||
|
|||||||
Reference in New Issue
Block a user