2011-03-01 10 views
0

これはGalaxy Tabの特有の問題か、WifiManagerライブラリのいくつかの関連する方法を利用していない場合はわかりませんが、起動時には無効になっていますが、有効にするとすぐに、接続中であっても有効とみなされます。Wifiは「有効」と報告していますが、

だから、私は私が有効な状態

//at THIS line it claims to be WIFI_STATE_DISABLED so I turn it on with... 
wifiManager.setEnabled(true); 
//and at this line it reports as 3 (which according to the doc is WIFI_STATE_ENABLED, even though it clearly isn't 
while(wifiManager.getWifiState() == WifiManager.WIFI_STATE_DISABLED || wifiManager.getWifiState() == WifiManager.WIFI_STATE_ENABLING){ 

を待っているスレッドを持っていますが、それはループに入ることはありません決して、それはちょうどそれが有効にされていない場合でも、右の過去をジャンプ

私には欠けている何か他の仕組みがあると思っていますか、あるいは私は "有効"とは何かを誤解していますか?

+0

あなたは 'wifiManager.setEnable()'または 'wifiManager.setWifiEnabled()'を呼び出していますか? http://developer.android.com/reference/android/net/wifi/WifiManager.html#setWifiEnabled(boolean)を参照してください。 –

答えて

1

WifiManager.WIFI_STATE_ENABLEDは、Wi-Fiデバイスがオンになっていることを伝えます。ワイヤレスネットワークへの接続が確立されているかどうかはわかりません。

android.net.ConnectivityManager.getActiveNetworkInfo()をご覧ください。この関数はNetworkStateを返します。 NetworkState.getState()機能を使用すると、接続が実際に利用可能かどうかを確認できます。

関連する問題