立马快速获取ssid的方法(即一旦切换Wifi网络成功后[其实中间有个断开过程],立马需要得到ssid),不能用WifiManager.WIFI_STATE_DISABLED和WifiManager.WIFI_STATE_ENABLED获取网络切换状态时,应该使用ConnectivityManager,首先在广播中使用Intent.action判断ConnectivityManager.CONNECTIVITY_ACTION。
/**
* 获取当前wifi的ssid
*/
public static String getSsid(Context ctx) {
WifiManager mWifiManager = (WifiManager) ctx.getSystemService(Context.WIFI_SERVICE);
if (mWifiManager.getConnectionInfo() != null) {
return mWifiManager.getConnectionInfo().getSSID();
}
return null;
}
private BroadcastReceiver mReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if (action.equals(ConnectivityManager.CONNECTIVITY_ACTION)) {
String state = intent.getParcelableExtra(ConnectivityManager.EXTRA_NETWORK_INFO);
if (state.equals(NetworkInfo.State.CONNECTED)) {
NetHelper.getSsid(context);
} else if (state.equals(NetworkInfo.State.DISCONNECTED)) {
}
}
}
};
本文介绍了一种在Android设备上快速获取当前连接WiFi网络SSID的方法。当网络切换成功后,即使处于断开过程中也能立即获取SSID。通过使用ConnectivityManager并监听ConnectivityManager.CONNECTIVITY_ACTION广播来实现。文中提供了一个具体的实现示例。
2491

被折叠的 条评论
为什么被折叠?



