判断Wifi是否连接成功,很简单(需要用到广播),
发送一个广播,filter.addAction("android.net.conn.CONNECTIVITY_CHANGE");
接收广播
if(intent.getAction().equals("android.net.conn.CONNECTIVITY_CHANGE")){
WifiSupport.getList(getContext(), list , -1);;//获取数据
adapter.notifyDataSetChanged();
if(WifiSupport.isWifiContected(getContext()) == 1){
Toast.makeText(getContext(), "连接成功" + netConnectingid, Toast.LENGTH_SHORT).show();
}else if(WifiSupport.isWifiContected(getContext()) == 2){
Toast.makeText(getContext(), "正在连接中" + netConnectingid, Toast.LENGTH_SHORT).show();
}else{
Toast.makeText(getContext(), "网络变化了3", Toast.LENGTH_SHORT).show();
}
}
下面是判断是否连接
public static final int WIFI_CONNECTED = 0x01;
public static final int WIFI_CONNECT_FAILED = 0x02;
public static final int WIFI_CONNECTING = 0x03;
/**
* 判断wifi是否连接成功,不是network
*
* @param context
* @return
*/
public static int isWifiContected(Context context) {
ConnectivityManager connectivityManager = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo wifiNetworkInfo = connectivityManager
.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
Log.v(TAG, "isConnectedOrConnecting = " + wifiNetworkInfo.isConnectedOrConnecting());
Log.d(TAG, "wifiNetworkInfo.getDetailedState() = " + wifiNetworkInfo.getDetailedState());
if (wifiNetworkInfo.getDetailedState() == NetworkInfo.DetailedState.OBTAINING_IPADDR
|| wifiNetworkInfo.getDetailedState() == NetworkInfo.DetailedState.CONNECTING) {
return WIFI_CONNECTING;
} else if (wifiNetworkInfo.getDetailedState() == NetworkInfo.DetailedState.CONNECTED) {
return WIFI_CONNECTED;
} else {
Log.d(TAG, "getDetailedState() == " + wifiNetworkInfo.getDetailedState());
return WIFI_CONNECT_FAILED;
}
}
至此大功告成,文章如有错误 欢迎各位指点