安卓开发过程中,有可能会遇到监听WiFi信号强弱的需求,比如:一些应用隐藏掉手机自带的状态栏,就需要自己实现监听WiFi信号的强弱,还有电池电量,还有时间的变化;废话不多说,下面看图,自己实现的状态栏:

下面是获取WiFi信号并设置相对应图标的代码:

/*** 获取WIFI信号的强弱*/public void getWifiStrength(final ImageView ivSign) {// 获得WifiManagerfinal WifiManager wifiManager = (WifiManager) getApplicationContext().getSystemService(WIFI_SERVICE);// 使用定时器,每隔5秒获得一次信号强度值Timer timer = new Timer();timer.scheduleAtFixedRate(new TimerTask() {private WifiInfo wifiInfo;@Overridepublic void run() {wifiInfo = wifiManager.getConnectionInfo();//获得信号强度值int level = wifiInfo.getRssi();Log.d("赵小贱", level + "");//根据获得的信号强度发送信息if (level <= 0 && level >= -50) {Message msg = new Message();msg.what = 1;handler.sendMessage(msg);} else if (level < -50 && level >= -70) {Message msg = new Message();msg.what = 2;handler.sendMessage(msg);} else if (level < -70 && level >= -80) {Message msg = new Message();msg.what = 3;handler.sendMessage(msg);} else if (level < -80 && level >= -100) {Message msg = new Message();msg.what = 4;handler.sendMessage(msg);} else {Message msg = new Message();msg.what = 5;handler.sendMessage(msg);}}}, 1000, 5000);// 使用Handler实现UI线程与Timer线程之间的信息传递,每5秒告诉UI线程获得wifiInto// 如果收到正确的消息就获取WifiInfo,改变图片并显示信号强度//以防万一// 如果收到正确的消息就获取WifiInfo,改变图片并显示信号强度//以防万一// 如果收到正确的消息就获取WifiInfo,改变图片并显示信号强度//以防万一handler = new Handler() {@Overridepublic void handleMessage(Message msg) {switch (msg.what) {// 如果收到正确的消息就获取WifiInfo,改变图片并显示信号强度case 1:ivSign.setImageResource(R.drawable.sign_4);break;case 2:ivSign.setImageResource(R.drawable.sign_3);break;case 3:ivSign.setImageResource(R.drawable.sign_2);break;case 4:ivSign.setImageResource(R.drawable.sign_1);break;case 5:ivSign.setImageResource(R.drawable.sign_error);break;default://以防万一ivSign.setImageResource(R.drawable.sign_error);}}};}

点击下载源码:http://download.csdn.net/download/zhaoxiaojian1213/9977254

安卓实时更新显示时间:http://blog.csdn.net/zhaoxiaojian1213/article/details/77976688

安卓自定义电量显示图标:http://blog.csdn.net/zhaoxiaojian1213/article/details/77977505

安卓广播监听WiFi信号强弱的变化相关推荐

  1. Android监听WIFI信号,这可能是Android上monitore Wifi信号强度的最佳方法

    对于那些想知道我是怎么做的人 . 我使用了Job Scheduler,因为它是一个需要 Build wifi连接的任务 . 此外,您可以查看my blog,在那里您可以找到有关此信息和额外信息的更多详 ...

  2. Android 监听wifi总结

    功能实现:控制wifi开关,连上某个特定的wifi. 首先先上个wifi工具类,此类转载网上一人,出处不明了. package rodar.rgs.conference.utils;import ja ...

  3. android 信号强度变化,Android监听WIFI网络的变化并且获得当前信号强度

    MainActivity如下: package cc.testwifi; import android.os.Bundle; import android.app.Activity; /** * De ...

  4. linux查看wifi网速,无线信号强度解析及linux如何查看wifi信号强弱等

    dBdB是一个表征相对值的值,纯粹的比值,只表示两个量的相对大小关系,没有单位,当考虑甲的功率相比于乙功率大或小多少个dB时,按下面的计算公式:10log(甲功率/乙功率),如果采用两者的电压比计算, ...

  5. linux查看wifi信号命令_无线信号强度解析及linux如何查看wifi信号强弱等

    dBdB是一个表征相对值的值,纯粹的比值,只表示两个量的相对大小关系,没有单位,当考虑甲的功率相比于乙功率大或小多少个dB时,按下面的计算公式:10log(甲功率/乙功率),如果采用两者的电压比计算, ...

  6. 无线信号强度解析及linux如何查看wifi信号强弱等

    dB dB是一个表征相对值的值,纯粹的比值,只表示两个量的相对大小关系,没有单位,当考虑甲的功率相比于乙功率大或小多少个dB时,按下面的计算公式:10log(甲功率/乙功率),如果采用两者的电压比计算 ...

  7. android 获取wifi的加密类型,Android WIFI开发:获取wifi列表,连接指定wifi,获取wifi加密方式,监听wifi网络变化等...

    下面是 Android 开发中 WiFi 的常用配置,如:获取当前 WiFi ,扫描 WiFi 获取列表,连接指定 WiFi ,监听网络变化等等. 下面是效果图: GitHub 下载地址:https: ...

  8. Android广播监听usb插拔状态

    注册广播监听usb的挂载状态,过滤 vid 和 pid,以下是源码: class IdUsbManager private constructor() {val pid = 50010val vid ...

  9. Android 监听 WiFi 开关状态

    Android 监听 WiFi 开关状态 转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/70854309 本文出自[赵彦军的博客] ...

最新文章

  1. 青少年编程竞赛交流群周报(第038周)
  2. python中文叫什么意思-在python中%是什么意思
  3. uva 10723 Cyborg Genes
  4. Spark-submit提交任务到集群
  5. C#中使用SendMessage进行进程通信,可发送字符串,结构体(不能发送类类型)。
  6. 用GCD线程组与GCD信号量将异步线程转换为同步线程
  7. esxi 5.5运行linux拯救模式,启用Esxi 5.5 SSH 功能
  8. mysql 二进制日志删除_MYSQL 删除二进制日志的 3 个方法
  9. HTML5 Boilerplate: 最流行的web开发前端模版
  10. sql高级语法之case语句
  11. 1. 方程求根(二分法)
  12. java textbox换行符_TextBox中的空格与换行问题
  13. 基于simulink的PN码同步的性能仿真
  14. MATLAB数字水印处理技术的实现
  15. vs2019,C#,MySQL创建图书管理系统3(管理员相关页面的布局和设计实现,图书显示,图书添加)
  16. HBU-NNDL 实验五 前馈神经网络(3)鸢尾花分类
  17. ElasticSearch 在 Spring 项目中的实践
  18. 02.GCC编译器的使用
  19. srs系列七——Vhost模式
  20. jpg、jpeg、png、gif、bmp、tiff、ai、cdr、eps 图片格式的区别

热门文章

  1. React + jest 测试 hightlight.js 报错
  2. P4语言——p4runtime
  3. VMware共享文件夹设置(ubuntu22.04)
  4. android嵌入式底层开发教程
  5. u8服务器配置文档,u8云服务器配置
  6. java GUI学习
  7. 基于javaweb的it设备固定资产管理系统(java+ssm+jsp+mysql)
  8. Android 接口回调(有史以来最实用最简单的例子)
  9. 跨域以及跨域的小周边
  10. 【阅读笔记】Reinforced Attention for Few-Shot Learning and Beyond