第一步;注册广播Intent.ACTION_BATTERY_CHANGED
第二步:
| int status = intent.getIntExtra("status", 0);//获取电池状态 int level = intent.getIntExtra("level", 0);//获取电量值 switch (status) { case BatteryManager.BATTERY_STATUS_UNKNOWN: //statusString = "unknown";未知 batteryType=0; break; case BatteryManager.BATTERY_STATUS_CHARGING: batteryType=1; //statusString = "charging";充电 // battery_image.setImageResource(R.drawable.stat_sys_battery_charge); // battery_image.getDrawable().setLevel(level); break; case BatteryManager.BATTERY_STATUS_DISCHARGING: batteryType=2; //statusString = "discharging";放电 // battery_image.setImageResource(R.drawable.stat_sys_battery); // battery_image.getDrawable().setLevel(level); break; case BatteryManager.BATTERY_STATUS_NOT_CHARGING: batteryType=3; //statusString = "not charging";未充电 break; case BatteryManager.BATTERY_STATUS_FULL: //statusString = "full";电已充满 batteryType=4; break; } if (intent.getAction().equals(Intent.ACTION_BATTERY_CHANGED)) { Log.i("caohai", "jian kong ting zhi:"+batteryType); //根据不同的状态处理 switch (batteryType) { case 0: break; case 1: Log.i("caohai", "jian kong ting zhi red red"); //StreamerUtil.setIndicatorOnOff("0"); StreamerUtil.setIndicatorRedOnOff("255"); break; case 2: break; case 3: if (!mMonitorHandler.mIsMonitor) { StreamerUtil.setIndicatorOnOff("0"); } break; case 4: if (!mMonitorHandler.mIsMonitor) { StreamerUtil.setIndicatorRedOnOff("0"); StreamerUtil.setIndicatorGreenOnOff("255"); } break; default: break; } } |
本文介绍如何在Android应用中注册并监听电量变化广播,通过解析Broadcast Intent.ACTION_BATTERY_CHANGED来获取电池状态和电量值,并根据不同状态控制设备指示灯的颜色。

被折叠的 条评论
为什么被折叠?



