57 votes

Vérifier si le Wi-Fi est activé ou non sur Android

Quel serait le code pour vérifier si le Wi-Fi est activé ou non ?

0 votes

2 votes

Upvote pour compenser les raisins aigres :)

118voto

Rasel Points 9997
WifiManager wifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE);
if (wifiManager.isWifiEnabled()) {
  // wifi is enabled
}

Pour plus de détails, consultez aquí

2 votes

If (wifi.isWifiEnabled()) {//wifi est activé }

2 votes

Cela nécessite <uses-permission Android:name="Android.permission.ACCESS_WIFI_STATE" />. Désolé si c'est évident mais j'ai eu une erreur d'exécution inattendue.

1 votes

Veuillez modifier la réponse pour inclure les autorisations nécessaires. Mon IDE me suggère également d'utiliser getApplciationContext() plutôt que getSystemService()

24voto

Rania-Boy Points 410

Les réponses ci-dessus fonctionnent bien. Mais n'oubliez pas d'ajouter les bonnes permissions dans le manifeste :

<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"/>

J'espère que cela vous aidera.

1 votes

Je ne pense pas que nous ayons besoin de CHANGE_WIFI_STATE

0 votes

@LoveForDroid : pourquoi ?

17voto

KoKlA Points 577

La première réponse est correcte, mais n'est pas à jour car ce code peut provoquer une fuite de mémoire sur certains appareils.

Par conséquent, la meilleure réponse serait :

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

Permissions dans app=>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" />

Référence : https://www.mysysadmintips.com/other/programming/759-the-wifi-service-must-be-looked-up-on-the-application-context

8voto

Zaur Points 3277
public static boolean wifiState() {
    WifiManager wifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE);
    return wifiManager.isWifiEnabled();
}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X