2012-09-08 41 views
0

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

回答

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

希望它会帮助你。

1
public boolean IsWiFiConnected(){ 
    ConnectivityManager manager = (ConnectivityManager) getSystemService(CONNECTIVITY_SERVICE); 
    NetworkInfo netInfo = manager.getNetworkInfo(ConnectivityManager.TYPE_WIFI); 
    return netInfo.isConnectedOrConnecting(); 
} 
+0

非常感谢。你的答案真的很有用:) – Poligun

+0

享受与编码 – Rajendra

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(); 
    } 
相关问题