diff --git a/src/com/android/settings/development/WirelessDebuggingPreferenceController.java b/src/com/android/settings/development/WirelessDebuggingPreferenceController.java index a3daede3ca9..c17803d1d19 100644 --- a/src/com/android/settings/development/WirelessDebuggingPreferenceController.java +++ b/src/com/android/settings/development/WirelessDebuggingPreferenceController.java @@ -20,7 +20,8 @@ import android.content.Context; import android.database.ContentObserver; import android.debug.IAdbManager; import android.net.ConnectivityManager; -import android.net.NetworkInfo; +import android.net.Network; +import android.net.NetworkCapabilities; import android.net.Uri; import android.os.Handler; import android.os.Looper; @@ -141,10 +142,16 @@ public class WirelessDebuggingPreferenceController extends DeveloperOptionsPrefe public static boolean isWifiConnected(Context context) { ConnectivityManager cm = (ConnectivityManager) context.getSystemService( Context.CONNECTIVITY_SERVICE); - if (cm != null) { - NetworkInfo info = cm.getActiveNetworkInfo(); - if (info != null && info.isConnected()) { - return info.getType() == ConnectivityManager.TYPE_WIFI; + if (cm == null) { + return false; + } + for (Network network : cm.getAllNetworks()) { + final NetworkCapabilities nc = cm.getNetworkCapabilities(network); + if (nc == null) { + continue; + } + if (nc.hasTransport(NetworkCapabilities.TRANSPORT_WIFI)) { + return true; } } return false;