Android检测相同SSID下的wifi热点并切换到信号更强的
16lz
2021-01-23
WifiManager mWifiManager = (WifiManager) context .getSystemService(Context.WIFI_SERVICE);WifiInfo wifiInfo = mWifiManager.getConnectionInfo();if (wifiInfo != null) { String curentSSID = wifiInfo.getSSID(); ListsameSSIDList = new ArrayList (); List list = mWifiManager.getScanResults(); if (list != null) { for (ScanResult rt : list) { if (curentSSID.replace("\"", "").equals(rt.SSID)) { sameSSIDList.add(rt); } } } if (sameSSIDList.size() >= 2) { ScanResult strongestRssi = sameSSIDList.get(0); Log.e("lihaile", "multiple ap"); for (int i = 1; i <= (sameSSIDList.size() - 1); i++) { if (sameSSIDList.get(i).level > strongestRssi.level) { strongestRssi = sameSSIDList.get(i); } } if ((strongestRssi.level - wifiInfo.getRssi()) > 10) { Log.e("lihaile", "change ap"); // MainActivity.appInfo("有更好的wifi"); mWifiManager.disconnect(); // MainActivity.appInfo("正在切换"); mWifiManager.reconnect(); } }}
更多相关文章
- 代码中设置drawableleft
- android 3.0 隐藏 系统标题栏
- Android开发中activity切换动画的实现
- Android(安卓)学习 笔记_05. 文件下载
- Android中直播视频技术探究之—摄像头Camera视频源数据采集解析
- 技术博客汇总
- android 2.3 wifi (一)
- AndRoid Notification的清空和修改
- Android中的Chronometer