判断手机设备是否支持5G无线频段

我们知道现在手机连接无线,用的最多的频段是2.4GHz的频段,但最近在做一个项目时涉及到无线设置,里面有一个wifi频段设置,有2.4G和5G两种,一开始没注意细节,直接设置,后来发现有的手机设备是不支持5G的,于是只好再做处理。在选择频段的时候先判断手机是否支持。

找到WiFiManager类,查看里面的方法,发现:

/**
* @return true if this adapter supports 5 GHz band
*/
public boolean is5GHzBandSupported() {
    return isFeatureSupported(WIFI_FEATURE_INFRA_5G);
}

通过getApplication().getSystemService(Context.WIFI_SERVICE); 得到WiFiManager,再去调用里面方法,可是这时候发现提示没有该方法,开始以为该方法写在内部类里,找了半天发现就是WiFiManager的方法,可以为什么调用不到,在网上查了好久,关于这方法的描述也不多,最后看一个老外的问题描述才知道,该方法需在 API 21 以上才能调用。这样程序是没问题了,本以为没事了,可一运行程序,点击选择5G选项时,应用崩了,查看日志显示nosuchmethod exception,查看此手机系统发现是4.3的,换一个Android5.0以上的系统运行试了发现没有问题,所有初步定义该方法需要手机安卓系统5.0以上才能正常运行。


猜你喜欢

转载自blog.csdn.net/yuanzhihui123/article/details/52025092
今日推荐