admin管理员组文章数量:1619288
1.Manifest.xm配置WiFi权限
2.打开wifi
public void openWifi() {
if (!mWifiManager.isWifiEnabled()) {
mWifiManager.setWifiEnabled(true);
}
}
3.进行扫描
public boolean startScan() {
return mWifiManager.startScan();
}
4.注册监听并通过返回刷新WiFiList
IntentFilter wifiFilter = new IntentFilter();
wifiFilter.addAction(WifiManager.SCAN_RESULTS_AVAILABLE_ACTION);
wifiFilter.addAction(WifiManager.NETWORK_STATE_CHANGED_ACTION);
wifiFilter.addAction(WifiManager.WIFI_STATE_CHANGED_ACTION);
wifiFilter.addAction(WifiManager.SUPPLICANT_STATE_CHANGED_ACTION);
registerWifiReceiver(wifiFilter);
public void registerWifiReceiver(IntentFilter intentFilter) {
if (null == wifiReceiver) {
wifiReceiver = new WifiReceiver();
}
mContext.registerReceiver(wifiReceiver, intentFilter);
}
5.监听网络变化
class WifiReceiver extends BroadcastReceiver {
public void onReceive(Context context, Intent intent) {
Log.i(TAG, "onReceive: intent action" + intent.getAction());
if (intent.getAction().equals(WifiManager.SCAN_RESULTS_AVAILABLE_ACTION)) {
//当扫描结果后,进行刷新列表
refreshLocalWifiListData();
if (null != listener) {
listener.onScanResultAvailable();
}
} else if (intent.getAction().equals(WifiManager.NETWORK_STATE_CHANGED_ACTION)) {//wifi连接网络状态变化
refreshLocalWifiListData();
NetworkInfo.DetailedState state = ((NetworkInfo) intent.getParcelableExtra(WifiManager.EXTRA_NETWORK_INFO)).getDetailedState();
if (null != listener) {
listener.onNetWorkStateChanged(state, mSSID);
}
} else if (intent.getAction().equals(WifiManager.WIFI_STATE_CHANGED_ACTION)) {//wifi状态变化
int wifiSt
版权声明:本文标题:android wifi实时刷新,Android中实现Wifi列表的更新即wifi的连接与使用 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/dongtai/1728797470a1174223.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论