Fix issue #67019445: Detect BATTERY_LOW/OKAY

Add a new extra that indicates the battery is low.

Test: BatteryConstraintTest updated
Change-Id: I9ff92e15974ea092283a840cd01c860d6586c9b5
This commit is contained in:
Dianne Hackborn
2017-11-21 16:33:44 -08:00
parent 911fbd2313
commit 74ed6ecdc4
5 changed files with 13 additions and 0 deletions

View File

@@ -30831,6 +30831,7 @@ package android.os {
field public static final int BATTERY_STATUS_FULL = 5; // 0x5
field public static final int BATTERY_STATUS_NOT_CHARGING = 4; // 0x4
field public static final int BATTERY_STATUS_UNKNOWN = 1; // 0x1
field public static final java.lang.String EXTRA_BATTERY_LOW = "battery_low";
field public static final java.lang.String EXTRA_HEALTH = "health";
field public static final java.lang.String EXTRA_ICON_SMALL = "icon-small";
field public static final java.lang.String EXTRA_LEVEL = "level";

View File

@@ -33563,6 +33563,7 @@ package android.os {
field public static final int BATTERY_STATUS_FULL = 5; // 0x5
field public static final int BATTERY_STATUS_NOT_CHARGING = 4; // 0x4
field public static final int BATTERY_STATUS_UNKNOWN = 1; // 0x1
field public static final java.lang.String EXTRA_BATTERY_LOW = "battery_low";
field public static final java.lang.String EXTRA_HEALTH = "health";
field public static final java.lang.String EXTRA_ICON_SMALL = "icon-small";
field public static final java.lang.String EXTRA_LEVEL = "level";

View File

@@ -31034,6 +31034,7 @@ package android.os {
field public static final int BATTERY_STATUS_FULL = 5; // 0x5
field public static final int BATTERY_STATUS_NOT_CHARGING = 4; // 0x4
field public static final int BATTERY_STATUS_UNKNOWN = 1; // 0x1
field public static final java.lang.String EXTRA_BATTERY_LOW = "battery_low";
field public static final java.lang.String EXTRA_HEALTH = "health";
field public static final java.lang.String EXTRA_ICON_SMALL = "icon-small";
field public static final java.lang.String EXTRA_LEVEL = "level";

View File

@@ -18,6 +18,7 @@ package android.os;
import android.annotation.SystemService;
import android.content.Context;
import android.content.Intent;
import android.hardware.health.V1_0.Constants;
import com.android.internal.app.IBatteryStats;
@@ -54,6 +55,14 @@ public class BatteryManager {
*/
public static final String EXTRA_LEVEL = "level";
/**
* Extra for {@link android.content.Intent#ACTION_BATTERY_CHANGED}:
* Boolean field indicating whether the battery is currently considered to be
* low, that is whether a {@link Intent#ACTION_BATTERY_LOW} broadcast
* has been sent.
*/
public static final String EXTRA_BATTERY_LOW = "battery_low";
/**
* Extra for {@link android.content.Intent#ACTION_BATTERY_CHANGED}:
* integer containing the maximum battery level.

View File

@@ -619,6 +619,7 @@ public final class BatteryService extends SystemService {
intent.putExtra(BatteryManager.EXTRA_HEALTH, mHealthInfo.batteryHealth);
intent.putExtra(BatteryManager.EXTRA_PRESENT, mHealthInfo.batteryPresent);
intent.putExtra(BatteryManager.EXTRA_LEVEL, mHealthInfo.batteryLevel);
intent.putExtra(BatteryManager.EXTRA_BATTERY_LOW, mSentLowBatteryBroadcast);
intent.putExtra(BatteryManager.EXTRA_SCALE, BATTERY_SCALE);
intent.putExtra(BatteryManager.EXTRA_ICON_SMALL, icon);
intent.putExtra(BatteryManager.EXTRA_PLUGGED, mPlugType);