先来了解下Android如何获取wifi的信息:
WifiManager wifi_service = (WifiManager)getSystemService(WIFI_SERVICE);
WifiInfo wifiInfo = wifi_service.getConnectionInfo();

其中wifiInfo有以下的方法:
wifiinfo.getBSSID();
wifiinfo.getSSID();
wifiinfo.getIpAddress();获取IP地址。
wifiinfo.getMacAddress();获取MAC地址。
wifiinfo.getNetworkId();获取网络ID。
wifiinfo.getLinkSpeed();获取连接速度,可以让用户获知这一信息。
wifiinfo.getRssi();获取RSSI,RSSI就是接受信号强度指示。
这里得到信号强度就靠wifiinfo.getRssi()这个方法。得到的值是一个0到-100的区间值,是一个int型数据,其中0到-50表示信号最好,-50到-70表示信号偏差,小于-70表示最差,有可能连接不上或者掉线,一般Wifi已断则值为-200。

  • 获取wifi信号强度:
    private int obtainWifiInfo() {// Wifi的连接速度及信号强度:int strength = 0;WifiManager wifiManager = (WifiManager) getSystemService(WIFI_SERVICE);// WifiInfo wifiInfo = wifiManager.getConnectionInfo();WifiInfo info = wifiManager.getConnectionInfo();if (info.getBSSID() != null) {// 链接信号强度,5为获取的信号强度值在5以内strength = WifiManager.calculateSignalLevel(info.getRssi(), 5);// 链接速度int speed = info.getLinkSpeed();// 链接速度单位String units = WifiInfo.LINK_SPEED_UNITS;// Wifi源名称String ssid = info.getSSID();}
//        return info.toString();return strength;}
  • 广播接收信号强度变化的处理:
    public BroadcastReceiver rssiReceiver = new BroadcastReceiver() {@Overridepublic void onReceive(Context context, Intent intent) {int s = obtainWifiInfo();tv.setText(s+"");}};
  • 注册广播:
        registerReceiver(rssiReceiver,new IntentFilter(WifiManager.RSSI_CHANGED_ACTION));
  • 权限:
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />

Android 获取wifi信号强度相关推荐

  1. Android获取Wifi信号强度方法总结

    直接封装了一个工具类,获取WIFI信号强度直接调用该工具类的getCurrentNetworkRssi方法即可. public class WifiUtils {// 获取当前热点最新的信号强度pub ...

  2. android 获取wifi信号强度,获取wifi当前手机连接的wifi信息以及信号强度

    1.获得WifiManager对象WifiManager wm = (WifiManager) getApplicationContext().getSystemService(Context.WIF ...

  3. android获取wifi信号强度,Native.js 获取当前wifi信号强度

    使用Native.js获取当前WiFi的信号强度: //获取当前WiFi信号强度 function checkWifiSignal() { var Signal = null; var Context ...

  4. Android获取WIFI信号强度

    1. 利用Android下的WifiManager获取可见的SSID WifiManager wifiMg = (WifiManager)act.getSystemService(act.WIFI_S ...

  5. android 获取wifi 信号质量,信号强度

    android 获取wifi 信号质量 编辑 | 删除 int strength = WifiManager.calculateSignalLevel(info.getRssi(), 5);即信号强度 ...

  6. android 获取wifi和移动网络信号强度

    1. 获取wifi信号强度 可以直接监听广播 MyReceiver receiver = new RssiReceiver(); IntentFilter intentFilter = new Int ...

  7. android 获取蓝牙信号强度,连接后获取蓝牙RSSI信号强度

    android 获取蓝牙信号强度,连接后获取蓝牙RSSI信号强度 基于蓝牙的RSSI可以有很多应用,要获得蓝牙的RSSI无外乎两种方法. 第一种:基于扫瞄的方法 优点是Android本身支持,缺点是s ...

  8. iOS状态栏操作之获取WiFi信号强度,WiFi名字和IP,网络类型,运营商,电池电量,系统时间等...

    iOS开发中对状态栏的操作比较少,因为状态栏是系统级别的View,是受苹果保护的,不可以随便更改,不可以随便遮挡住.如果违反这些苹果的规范,那么APP将有可能上不了架.笔者就曾写过一个APP,因状态栏 ...

  9. iOS状态栏操作之获取WiFi信号强度,网络类型,运营商,电池电量,系统时间等

    iOS状态栏操作之获取WiFi信号强度,WiFi名字和IP,网络类型,运营商,电池电量,系统时间等 此篇文章讲述iOS中的状态栏 iOS开发中对状态栏的操作比较少,因为状态栏是系统级别的View,是受 ...

最新文章

  1. React Native常用组件之ListView
  2. spring boot源码分析之SpringApplication
  3. python 接口测试多线程_python多线程测试接口性能,就是这么简单
  4. 正则实现二代身份证号码验证详解
  5. 算法导论——基本的图算法
  6. python基础学习笔记第二天 内建方法(s t r)
  7. T141基于51单片机出租车计费器公里计数,Proteus设计,keil程序、课题设计
  8. 软件破解逆向安全(十二)内存特征码
  9. 再见,深圳!再见,腾讯!
  10. fatal: unable to access ...: LibreSSL SSL_connnect: Connection reset by peer in connect to... :443
  11. 华为项目管理金种子培训教材(资料下载)
  12. 工业机器人九龙坡区职教中心_重庆市九龙坡职业教育中心(职教中心)简介简介...
  13. 手游开发中你需要了解的开发语言知识
  14. PC端移动端IP查询
  15. PCL学习笔记5-sample consensus采样一致性算法
  16. GE董事长兼首席执行官杰夫.伊梅尔特上任第一年致诸位股东、客户与员工(中英文)
  17. apollo planning module
  18. class_addMethod的详解
  19. 家庭收支软件(C语言)
  20. 屏幕截图 take screenshot

热门文章

  1. 东距(easting)、北距(northing)、东伪偏移(false easting)、北伪偏移(false northing)
  2. TurboMosaic for Mac如何制作个性化的照片马赛克拼图
  3. Android代码混淆处理,android代码混淆解决方案
  4. 宋宇海:区块链技术有机会成为第四次技术革命的标志
  5. 机器人学导论(第三版) 第三章 操作臂运动学 3.5操作臂运动学
  6. 第十三章第一节(Triangle类)(Triangle class)
  7. 如何修改Moodle上传文件大小的限制
  8. EF Core的学习之路01
  9. 计算机组策略怎么设置远程桌面,组策略 之   自动启用客户端远程桌面功能
  10. The file Tomcat8.exe was not found... Either the CATALINA_HOME environment variable is not defined c