0

首先,我使用该方法WifiManager.getWifiState()来确定我的设备的 Wi-Fi 是否启用。如果已启用,则WifiManager.getConnectionInfo()返回一个WifiInfo包含 SSID 和我需要的其他信息的对象。但是我怎么知道设备是否已经连接到具有该 SSID 的热点,或者仍在连接?我必须创建一个BroadcastReciever类吗?

4

3 回答 3

1
   public  boolean IsWiFiConnected(){
    ConnectivityManager manager = (ConnectivityManager) getSystemService(CONNECTIVITY_SERVICE);
    NetworkInfo netInfo = manager.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
    return netInfo.isConnectedOrConnecting();
}
于 2012-09-08T08:48:26.753 回答
0

这是给你的代码:

public boolean isInternetAvailable() {
    ConnectivityManager cm = (ConnectivityManager) activity.getSystemService(Context.CONNECTIVITY_SERVICE);
    if (cm.getActiveNetworkInfo() != null)
        return (cm.getActiveNetworkInfo().isConnected() && cm.getActiveNetworkInfo().isAvailable());
    else
        return false;
}

希望它会帮助你。

于 2012-09-08T08:46:32.407 回答
0

这可能会帮助你

public static boolean isCheckedNetwork() {

        ConnectivityManager connect = (ConnectivityManager) mcontext.getSystemService(Context.CONNECTIVITY_SERVICE);
        NetworkInfo network = null;
        if (connect != null) {
            network = connect.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
        }
        return network == null ? false : network.isConnected();
    }
于 2012-09-08T08:55:48.073 回答