安卓广播监听WiFi信号强弱的变化
2017-09-14 10:01
411 查看
安卓开发过程中,有可能会遇到监听WiFi信号强弱的需求,比如:一些应用隐藏掉手机自带的状态栏,就需要自己实现监听WiFi信号的强弱,还有电池电量,还有时间的变化;废话不多说,下面看图,自己实现的状态栏:
下面是获取WiFi信号并设置相对应图标的代码:
点击下载源码:http://download.csdn.net/download/zhaoxiaojian1213/9977254
安卓实时更新显示时间:http://blog.csdn.net/zhaoxiaojian1213/article/details/77976688
安卓自定义电量显示图标:http://blog.csdn.net/zhaoxiaojian1213/article/details/77977505
下面是获取WiFi信号并设置相对应图标的代码:
/** * 获取WIFI信号的强弱 */ public void getWifiStrength(final ImageView ivSign) { // 获得WifiManager final WifiManager wifiManager = (WifiManager) getApplicationContext().getSystemService(WIFI_SERVICE); // 使用定时器,每隔5秒获得一次信号强度值 Timer timer = new Timer(); timer.scheduleAtFixedRate(new TimerTask() { private WifiInfo wifiInfo; @Override public 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() { @Override public 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、蓝牙变化广播
- Android监听WIFI网络的变化并且获得当前信号强度
- 监听开机,电量变化,信号变化的广播
- Android 广播监听wifi和流量网络状态变化
- android-监听wifi状态和信号强度变化
- Android监听WIFI网络的变化并且获得当前信号强度
- Android监听WIFI网络的变化并且获得当前信号强度
- 接收系统广播监听网络变化
- Android 监听wifi广播的两种方式
- Android 广播接收器学习之监听网络变化
- 简单 android 广播监听网络状态变化
- iOS监听 网络信号变化
- 安卓手机实现wifi中继、WiFi信号增强
- Android利用广播监听设备网络连接(断网)的变化情况
- 通过广播监听WiFi连接状态,自动读取数据WifiManager /NetworkInfo
- iOS 监听wifi状态的变化
- 【android】监听网络变化连续多个广播的问题解决
- Android自定义一个广播接收器BroadcastReceiver监听系统wifi连接
- 用广播监听安卓设备电量状态
- 监听电池变化的广播中携带的数据:Intent.ACTION_BATTERY_CHANGED