Android判断手机的电池状态

来源:互联网 发布:人种歧视 知乎 编辑:程序博客网 时间:2024/06/10 05:02

第一步;注册广播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;
}
}



0 0