Проверка Wi-Fi включена или нет на Android - PullRequest
52 голосов
/ 06 июля 2011

Каким будет код для проверки, включен ли Wi-Fi или нет?

Ответы [ 4 ]

113 голосов
/ 06 июля 2011
WifiManager wifi = (WifiManager)getSystemService(Context.WIFI_SERVICE);
if (wifi.isWifiEnabled()){
//wifi is enabled
}

Подробнее см. здесь

23 голосов
/ 19 сентября 2014

Приведенные выше ответы работают нормально, но не забудьте добавить правильные разрешения в манифест:

<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" >
</uses-permission>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" >
</uses-permission>
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" >
</uses-permission>

Надеюсь, это поможет ..

10 голосов
/ 21 июня 2017

Верхний ответ правильный, но не актуальный, так как этот код может вытекать из памяти на некоторых устройствах.

Поэтому лучший ответ будет:

WifiManager wifi =(WifiManager)getApplicationContext().getSystemService(Context.WIFI_SERVICE);
if (wifi.isWifiEnabled()){
//wifi is enabled
}

Разрешения в приложении => mainfests => AndroidManifest.xml:

<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />

Ссылка: https://www.mysysadmintips.com/other/programming/759-the-wifi-service-must-be-looked-up-on-the-application-context

8 голосов
/ 09 апреля 2014
public static boolean wifiState()
{
    WifiManager mng = (WifiManager) getSystemService(Context.WIFI_SERVICE);
    return mng.isWifiEnabled();
}
...