我一开始看这帖子,找不到答案,为了后来的人,我来回复吧。
WifiManager wifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE); WifiInfo wifiInfo = wifiManager.getConnectionInfo();
根据wifiInfo.getFrequency()可以判断是不是5G
应该将会返回4个数字
2字开头的话,就系2.4G;5字开头的话,就系5G。
最好用第一个数字来判断,而不要用全4个数字来判断,因为后面的有别的意义。
顺便说一下,以上的方法是在5.1的源码下的,若想兼容4.4就要这样:
WifiInfo wifiInfo = wifiManager.getConnectionInfo(); String tempSsidString = wifiInfo.getSSID(); if (tempSsidString != null && tempSsidString.length() > 2) { wifiSsid = tempSsidString.substring(1, tempSsidString.length() - 1); List<ScanResult> scanResults=wifiManager.getScanResults(); for(ScanResult scanResult:scanResults){ if(scanResult.SSID.equals(wifiSsid)){ scanResult.frequency; break; } } }
wifiinfo中有判断是否是5G的函数可调用
/** * @hide * TODO: makes real freq boundaries */ public boolean is5GHz() { return ScanResult.is5GHz(mFrequency); }
以上所述是小编给大家介绍的Android判断wifi是5G还是2.4G,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对呐喊教程网站的支持!
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。