2011-07-06 14 views
47

Wi-Fiが有効かどうかを確認するコードは何ですか?詳細についてAndroidでWi-Fiが有効かどうかを確認する

+5

-1コードを求めるための –

+0

[wifiがアンドロイドで接続されているかどうかを確認する方法](http://stackoverflow.com/questions/3841317/how-to-see-if-wifi-is-connected-in-android) –

答えて

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

上記の答えは正常に動作وが、マニフェストに必要な権限を追加することを忘れないでくださいhere

+2

(wifi.isWifiEnabled()) \t \t – inforg

+0

{// WIFIが \t \tが有効になっている}場合、これは必要<アンドロイド許可の使用:名= "android.permission.ACCESS_WIFI_STATE" />。申し訳ありませんが、これは明らかですが、私は予期しないランタイムエラーが発生しました。 – user420667

+0

回答を編集して必要な権限を含めてください。私のIDEは、 'getSystemService()'ではなく 'getApplciationContext()'を使うことを提案しています – Zapnologica

7
public static boolean wifiState() 
{ 
    WifiManager mng = (WifiManager) getSystemService(Context.WIFI_SERVICE); 
    return mng.isWifiEnabled(); 
} 
21

を確認してください。

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

はそれが役に立てば幸い..

+0

私はCHANGE_WIFI_STATEが必要ではないと思います – LoveForDroid

2

一番上の回答は正しいですが、このコードは特定のdのメモリをリークする可能性があるため、最新のものではありませんevices。

したがって、より良い答えは次のようになります。アプリ=> mainfests =>のAndroidManifest.xmlで

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

権限:

<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

関連する問題