永发信息网

android开发怎么处理wifi SSID重名

答案:4  悬赏:40  手机版
解决时间 2021-02-23 05:10
  • 提问者网友:几叶到寒
  • 2021-02-22 05:45
android开发,搜索可见wifi后。listview会出现多个ChinaNet或CMCC。请问怎么处理成只显示一个ChinaNet或CMCC?可以的话,附上代码?
最佳答案
  • 五星知识达人网友:duile
  • 2021-02-22 06:33
可参照以下代码处理:

public ListnoSameName(List list)
{
List newlist = new ArrayList();
for (ScanResult result : list)
{
if (!TextUtils.isEmpty(result.SSID) && !containName(newlist, result.SSID))
newlist.add(result);
}
return newlist;
}
public void getAllNetWorkList(){
// 每次点击扫描之前清空上一次的扫描结果
if(sb!=null){
sb=new StringBuffer();
}
//开始扫描网络
mWifiAdmin.startScan();
list=mWifiAdmin.getWifiList();

if(noSameName(list)!=null){
for(int i=0;i //得到扫描结果
mScanResult=noSameName(list).get(i);
sb=sb.append(mScanResult.BSSID+" ").append(mScanResult.SSID+" ")
.append(mScanResult.capabilities+" ").append(mScanResult.frequency+" ")
.append(mScanResult.level+"\n\n");
}
allNetWork.setText("扫描到的wifi网络:\n"+sb.toString());
}
}
全部回答
  • 1楼网友:妄饮晩冬酒
  • 2021-02-22 08:34
通常情况是,wifi显示“正在连接/正在获取ip地址”然后秒断,再显示,再秒断,如此往复。一般如果无线信号较强又出现这种情况的话,基本上可以知道是密码错误或者你的mac已经被过滤掉了,也就是连不上了
  • 2楼网友:孤老序
  • 2021-02-22 08:01
public List noSameName(List oldSr) { List newSr = new ArrayList(); for (ScanResult result : oldSr) { if (!TextUtils.isEmpty(result.SSID) && !containName(newSr, result.SSID)) newSr.add(result); } return newSr; } public boolean containName(List sr, String name) { for (ScanResult result : sr) { if (!TextUtils.isEmpty(result.SSID) && result.SSID.equals(name)) return true; } return false; }
  • 3楼网友:忘川信使
  • 2021-02-22 07:07
public List noSameName(List oldSr) { List newSr = new ArrayList(); for (ScanResult result : oldSr) { if (!TextUtils.isEmpty(result.SSID) && !containName(newSr, result.SSID)) newSr.add(result); } return newSr; } public boolean containName(List sr, String name) { for (ScanResult result : sr) { if (!TextUtils.isEmpty(result.SSID) && result.SSID.equals(name)) return true; } return false; }
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯