
private voID checkWifi(){ ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo Info = cm.getActiveNetworkInfo(); if (Info == null || !Info.isConnectedOrConnecting()) { Log.i("WIFI CONNECTION","No connection"); } else { int netType = Info.getType(); int netSubtype = Info.getSubtype(); if (netType == ConnectivityManager.TYPE_WIFI) { wifiManager = (WifiManager)getApplicationContext().getSystemService(Context.WIFI_SERVICE); int linkSpeed = wifiManager.getConnectionInfo().getlinkSpeed(); int RSSi = wifiManager.getConnectionInfo().getRSSi(); Log.i("WIFI CONNECTION","Wifi connection speed: "+linkSpeed + " RSSi: "+RSSi); //Need to get wifi strength } }} 事情是我得到像-35或-47等数字…我不明白他们的价值观..我已经看了androID文档及其所有状态:
public int getRSSi ()
Since: API Level 1 Returns the received signal strength indicator of
the current 802.11 network.This is not normalized,but should be!
Returns the RSSI,in the range ??? to ???
谁能解释如何“正常化”或理解这些结果?
解决方法 根据IEEE 802.11文档:较小的负值表示较高的信号强度.范围在-100到0 dBm之间,接近0是强度更高,反之亦然.
总结以上是内存溢出为你收集整理的在Android WifiManager中Rssi的含义是什么?全部内容,希望文章能够帮你解决在Android WifiManager中Rssi的含义是什么?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)