msg.append("BatteryLevel "+batLevel + " BatteryVotage "+batteryVolt+"; ");
if (Config.LOG_TOFILE)ICLogger.logToFile("Battery",msg.toString());
ICLogger.i(msg.toString());
- if (batLevel >= 100) {
- mRuntime.setBattery(String.format("%03d",100));
- mRuntime.setBattery(100);
- mRuntime.setHaveBatteryChange(false);
- mRuntime.setBatteryLow(false);
- } else if (batLevel<100 && batLevel >= 25) {
- mRuntime.setBattery(String.format("%03d",batLevel));
- mRuntime.setBattery(batLevel);
- mRuntime.setHaveBatteryChange(false);
- mRuntime.setBatteryLow(false);
- } else if (batLevel<25 && batLevel > 15) {
- mRuntime.setBattery(String.format("%03d",batLevel));
- mRuntime.setBattery(batLevel);
- mRuntime.setHaveBatteryChange(true);
- } else if (batLevel<=15 && batLevel > 10) {
- if (Config.LOG_TOFILE) ICLogger.logToFile("Battery","BatteryLow less than 15%!");
- checkAndSendBatteryEvent(param1Context,mRuntime);
- mRuntime.setBattery(String.format("%03d",batLevel));
- mRuntime.setBattery(batLevel);
- mRuntime.setHaveBatteryChange(true);
- mRuntime.setBatteryLow(true);
- } else if (batLevel<=10 && batLevel > 5) {
- if (Config.LOG_TOFILE) ICLogger.logToFile("Battery","BatteryLow less than 10%!");
- checkAndSendBatteryEvent(param1Context,mRuntime);
- mRuntime.setBattery(String.format("%03d",batLevel));
- mRuntime.setBattery(batLevel);
- mRuntime.setHaveBatteryChange(true);
- mRuntime.setBatteryLow(true);
- } else {
-
- if (Config.LOG_TOFILE) ICLogger.logToFile("Battery","BatteryLow less than 5% !");
- checkAndSendBatteryEvent(param1Context,mRuntime);
- mRuntime.setBattery(String.format("%03d",batLevel));
- mRuntime.setBattery(batLevel);
- mRuntime.setHaveBatteryChange(true);
- mRuntime.setBatteryLow(true);
- }
+ //处理电压
+ process_battery_level(param1Context,batLevel);
}else if (Intent.ACTION_BATTERY_LOW.equals(intent.getAction())) {
// mRuntime.setBatteryLow(true);
AudioService.getInstance().play(context.getAssets(), "warning.mp3");
}
+ //根据电池电压进行低电报警等状态处理
+ public void process_battery_level(Context param1Context, int batLevel){
+ if (batLevel >= 100) {
+ mRuntime.setBattery(String.format("%03d",100));
+ mRuntime.setBattery(100);
+ mRuntime.setHaveBatteryChange(false);
+ mRuntime.setBatteryLow(false);
+ } else if (batLevel<100 && batLevel >= 25) {
+ mRuntime.setBattery(String.format("%03d",batLevel));
+ mRuntime.setBattery(batLevel);
+ mRuntime.setHaveBatteryChange(false);
+ mRuntime.setBatteryLow(false);
+ } else if (batLevel<25 && batLevel > 15) {
+ mRuntime.setBattery(String.format("%03d",batLevel));
+ mRuntime.setBattery(batLevel);
+ mRuntime.setHaveBatteryChange(true);
+ mRuntime.setBatteryLow(false);
+ } else if (batLevel<=15 && batLevel > 10) {
+ if (Config.LOG_TOFILE) ICLogger.logToFile("Battery","BatteryLow less than 15%!");
+ checkAndSendBatteryEvent(param1Context,mRuntime);
+ mRuntime.setBattery(String.format("%03d",batLevel));
+ mRuntime.setBattery(batLevel);
+ mRuntime.setHaveBatteryChange(true);
+ mRuntime.setBatteryLow(true);
+ } else if (batLevel<=10 && batLevel > 5) {
+ if (Config.LOG_TOFILE) ICLogger.logToFile("Battery","BatteryLow less than 10%!");
+ checkAndSendBatteryEvent(param1Context,mRuntime);
+ mRuntime.setBattery(String.format("%03d",batLevel));
+ mRuntime.setBattery(batLevel);
+ mRuntime.setHaveBatteryChange(true);
+ mRuntime.setBatteryLow(true);
+ } else {
+ if (Config.LOG_TOFILE) ICLogger.logToFile("Battery","BatteryLow less than 5% !");
+ checkAndSendBatteryEvent(param1Context,mRuntime);
+ mRuntime.setBattery(String.format("%03d",batLevel));
+ mRuntime.setBattery(batLevel);
+ mRuntime.setHaveBatteryChange(true);
+ mRuntime.setBatteryLow(true);
+ }
+ }
+
public static void checkAndSendBatteryEvent(Context context, Runtime runtime){
//没有充电,上次电池level > 15% , 上次电池并且不是 低电状态,则报警
int batLevel = (intent.getIntExtra(BatteryManager.EXTRA_LEVEL, -1) * 100) /
intent.getIntExtra(BatteryManager.EXTRA_SCALE, -1);
- if( batLevel>15) {
-
+ process_battery_level(context,batLevel);
- }else if (batLevel<=15 && batLevel > 5) {
- if (Config.LOG_TOFILE) ICLogger.logToFile("Battery","BatteryLow less than 15%!");
- checkAndSendBatteryEvent(context,mRuntime);
- mRuntime.setBattery(String.format("%03d",batLevel));
- mRuntime.setBattery(batLevel);
- mRuntime.setHaveBatteryChange(true);
- mRuntime.setBatteryLow(true);
- } else {
- if (Config.LOG_TOFILE) ICLogger.logToFile("Battery","BatteryLow less than 5% !");
- checkAndSendBatteryEvent(context,mRuntime);
- mRuntime.setBattery(String.format("%03d",batLevel));
- mRuntime.setBattery(batLevel);
- mRuntime.setHaveBatteryChange(true);
- mRuntime.setBatteryLow(true);
- }
return batLevel;
}