zoukankan      html  css  js  c++  java
  • android 区分wifi是5G还是2.4G

    http://bbs.csdn.net/topics/391033966?page=1

     

    我一开始看这帖子,找不到答案,为了后来的人,我来回复吧。
    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);
        }

     

  • 相关阅读:
    责任
    人生
    有感
    冲突无处不在
    中科院玉泉路攻略——吃篇(校外)
    兄弟
    (18)[转载]:跳台阶问题
    Excel表格加下列选择框
    (转载)(c#)数据结构与算法分析 数组、向量和表
    [转载] 趣味算法:字符串反转的N种方法
  • 原文地址:https://www.cnblogs.com/liang123/p/6325127.html
Copyright © 2011-2022 走看看