Loading core/java/android/os/BatteryConsumer.java +15 −11 Original line number Diff line number Diff line Loading @@ -161,6 +161,7 @@ public abstract class BatteryConsumer { */ @IntDef(prefix = {"PROCESS_STATE_"}, value = { PROCESS_STATE_ANY, PROCESS_STATE_UNSPECIFIED, PROCESS_STATE_FOREGROUND, PROCESS_STATE_BACKGROUND, PROCESS_STATE_FOREGROUND_SERVICE, Loading @@ -169,7 +170,8 @@ public abstract class BatteryConsumer { public @interface ProcessState { } public static final int PROCESS_STATE_ANY = 0; public static final int PROCESS_STATE_UNSPECIFIED = 0; public static final int PROCESS_STATE_ANY = PROCESS_STATE_UNSPECIFIED; public static final int PROCESS_STATE_FOREGROUND = 1; public static final int PROCESS_STATE_BACKGROUND = 2; public static final int PROCESS_STATE_FOREGROUND_SERVICE = 3; Loading @@ -180,7 +182,7 @@ public abstract class BatteryConsumer { static { // Assign individually to avoid future mismatch sProcessStateNames[PROCESS_STATE_ANY] = "any"; sProcessStateNames[PROCESS_STATE_UNSPECIFIED] = "unspecified"; sProcessStateNames[PROCESS_STATE_FOREGROUND] = "fg"; sProcessStateNames[PROCESS_STATE_BACKGROUND] = "bg"; sProcessStateNames[PROCESS_STATE_FOREGROUND_SERVICE] = "fgs"; Loading @@ -188,6 +190,7 @@ public abstract class BatteryConsumer { private static final int[] SUPPORTED_POWER_COMPONENTS_PER_PROCESS_STATE = { POWER_COMPONENT_CPU, POWER_COMPONENT_MOBILE_RADIO, }; static final int COLUMN_INDEX_BATTERY_CONSUMER_TYPE = 0; Loading @@ -213,7 +216,7 @@ public abstract class BatteryConsumer { sb.append("powerComponent=").append(sPowerComponentNames[powerComponent]); dimensionSpecified = true; } if (processState != PROCESS_STATE_ANY) { if (processState != PROCESS_STATE_UNSPECIFIED) { if (dimensionSpecified) { sb.append(", "); } Loading Loading @@ -283,7 +286,7 @@ public abstract class BatteryConsumer { if (mShortString == null) { StringBuilder sb = new StringBuilder(); sb.append(powerComponentIdToString(powerComponent)); if (processState != PROCESS_STATE_ANY) { if (processState != PROCESS_STATE_UNSPECIFIED) { sb.append(':'); sb.append(processStateToString(processState)); } Loading Loading @@ -333,7 +336,7 @@ public abstract class BatteryConsumer { * for all values of other dimensions such as process state. */ public Key getKey(@PowerComponent int componentId) { return mData.getKey(componentId, PROCESS_STATE_ANY); return mData.getKey(componentId, PROCESS_STATE_UNSPECIFIED); } /** Loading @@ -352,7 +355,7 @@ public abstract class BatteryConsumer { */ public double getConsumedPower(@PowerComponent int componentId) { return mPowerComponents.getConsumedPower( mData.getKeyOrThrow(componentId, PROCESS_STATE_ANY)); mData.getKeyOrThrow(componentId, PROCESS_STATE_UNSPECIFIED)); } /** Loading @@ -374,7 +377,7 @@ public abstract class BatteryConsumer { */ public @PowerModel int getPowerModel(@BatteryConsumer.PowerComponent int componentId) { return mPowerComponents.getPowerModel( mData.getKeyOrThrow(componentId, PROCESS_STATE_ANY)); mData.getKeyOrThrow(componentId, PROCESS_STATE_UNSPECIFIED)); } /** Loading Loading @@ -706,7 +709,7 @@ public abstract class BatteryConsumer { if (isSupported) { for (int processState = 0; processState < PROCESS_STATE_COUNT; processState++) { if (processState == PROCESS_STATE_ANY) { if (processState == PROCESS_STATE_UNSPECIFIED) { continue; } Loading Loading @@ -789,7 +792,7 @@ public abstract class BatteryConsumer { @NonNull public T setConsumedPower(@PowerComponent int componentId, double componentPower, @PowerModel int powerModel) { mPowerComponentsBuilder.setConsumedPower(getKey(componentId, PROCESS_STATE_ANY), mPowerComponentsBuilder.setConsumedPower(getKey(componentId, PROCESS_STATE_UNSPECIFIED), componentPower, powerModel); return (T) this; } Loading Loading @@ -825,7 +828,8 @@ public abstract class BatteryConsumer { @NonNull public T setUsageDurationMillis(@UidBatteryConsumer.PowerComponent int componentId, long componentUsageTimeMillis) { mPowerComponentsBuilder.setUsageDurationMillis(getKey(componentId, PROCESS_STATE_ANY), mPowerComponentsBuilder .setUsageDurationMillis(getKey(componentId, PROCESS_STATE_UNSPECIFIED), componentUsageTimeMillis); return (T) this; } Loading core/java/android/os/BatteryStats.java +18 −1 Original line number Diff line number Diff line Loading @@ -669,7 +669,7 @@ public abstract class BatteryStats implements Parcelable { case BatteryStats.Uid.PROCESS_STATE_FOREGROUND_SERVICE: return BatteryConsumer.PROCESS_STATE_FOREGROUND_SERVICE; default: return BatteryConsumer.PROCESS_STATE_ANY; return BatteryConsumer.PROCESS_STATE_UNSPECIFIED; } } Loading Loading @@ -963,6 +963,13 @@ public abstract class BatteryStats implements Parcelable { public abstract long getNetworkActivityPackets(int type, int which); @UnsupportedAppUsage public abstract long getMobileRadioActiveTime(int which); /** * Returns the amount of time (in microseconds) this UID was in the specified processState. */ public abstract long getMobileRadioActiveTimeInProcessState( @BatteryConsumer.ProcessState int processState); public abstract int getMobileRadioActiveCount(int which); /** Loading Loading @@ -1060,6 +1067,16 @@ public abstract class BatteryStats implements Parcelable { */ public abstract long getMobileRadioMeasuredBatteryConsumptionUC(); /** * Returns the battery consumption (in microcoulombs) of the uid's radio usage when in the * specified process state. * Will return {@link #POWER_DATA_UNAVAILABLE} if data is unavailable. * * {@hide} */ public abstract long getMobileRadioMeasuredBatteryConsumptionUC( @BatteryConsumer.ProcessState int processState); /** * Returns the battery consumption (in microcoulombs) of the screen while on and uid active, * derived from on device power measurement data. Loading core/java/android/os/BatteryUsageStats.java +1 −1 Original line number Diff line number Diff line Loading @@ -556,7 +556,7 @@ public final class BatteryUsageStats implements Parcelable, Closeable { } String label = BatteryConsumer.powerComponentIdToString(componentId); if (key.processState != BatteryConsumer.PROCESS_STATE_ANY) { if (key.processState != BatteryConsumer.PROCESS_STATE_UNSPECIFIED) { label = label + "(" + BatteryConsumer.processStateToString(key.processState) + ")"; } Loading core/java/android/os/PowerComponents.java +3 −2 Original line number Diff line number Diff line Loading @@ -18,6 +18,7 @@ package android.os; import static android.os.BatteryConsumer.POWER_COMPONENT_ANY; import static android.os.BatteryConsumer.POWER_COMPONENT_COUNT; import static android.os.BatteryConsumer.PROCESS_STATE_ANY; import static android.os.BatteryConsumer.PROCESS_STATE_UNSPECIFIED; import static android.os.BatteryConsumer.convertMahToDeciCoulombs; import android.annotation.NonNull; Loading Loading @@ -339,7 +340,7 @@ class PowerComponents { serializer.startTag(null, BatteryUsageStats.XML_TAG_COMPONENT); serializer.attributeInt(null, BatteryUsageStats.XML_ATTR_ID, componentId); if (key.processState != PROCESS_STATE_ANY) { if (key.processState != PROCESS_STATE_UNSPECIFIED) { serializer.attributeInt(null, BatteryUsageStats.XML_ATTR_PROCESS_STATE, key.processState); } Loading Loading @@ -398,7 +399,7 @@ class PowerComponents { switch (parser.getName()) { case BatteryUsageStats.XML_TAG_COMPONENT: { int componentId = -1; int processState = PROCESS_STATE_ANY; int processState = PROCESS_STATE_UNSPECIFIED; double powerMah = 0; long durationMs = 0; int model = BatteryConsumer.POWER_MODEL_UNDEFINED; Loading core/java/com/android/internal/os/BatteryStatsImpl.java +141 −48 File changed.Preview size limit exceeded, changes collapsed. Show changes Loading
core/java/android/os/BatteryConsumer.java +15 −11 Original line number Diff line number Diff line Loading @@ -161,6 +161,7 @@ public abstract class BatteryConsumer { */ @IntDef(prefix = {"PROCESS_STATE_"}, value = { PROCESS_STATE_ANY, PROCESS_STATE_UNSPECIFIED, PROCESS_STATE_FOREGROUND, PROCESS_STATE_BACKGROUND, PROCESS_STATE_FOREGROUND_SERVICE, Loading @@ -169,7 +170,8 @@ public abstract class BatteryConsumer { public @interface ProcessState { } public static final int PROCESS_STATE_ANY = 0; public static final int PROCESS_STATE_UNSPECIFIED = 0; public static final int PROCESS_STATE_ANY = PROCESS_STATE_UNSPECIFIED; public static final int PROCESS_STATE_FOREGROUND = 1; public static final int PROCESS_STATE_BACKGROUND = 2; public static final int PROCESS_STATE_FOREGROUND_SERVICE = 3; Loading @@ -180,7 +182,7 @@ public abstract class BatteryConsumer { static { // Assign individually to avoid future mismatch sProcessStateNames[PROCESS_STATE_ANY] = "any"; sProcessStateNames[PROCESS_STATE_UNSPECIFIED] = "unspecified"; sProcessStateNames[PROCESS_STATE_FOREGROUND] = "fg"; sProcessStateNames[PROCESS_STATE_BACKGROUND] = "bg"; sProcessStateNames[PROCESS_STATE_FOREGROUND_SERVICE] = "fgs"; Loading @@ -188,6 +190,7 @@ public abstract class BatteryConsumer { private static final int[] SUPPORTED_POWER_COMPONENTS_PER_PROCESS_STATE = { POWER_COMPONENT_CPU, POWER_COMPONENT_MOBILE_RADIO, }; static final int COLUMN_INDEX_BATTERY_CONSUMER_TYPE = 0; Loading @@ -213,7 +216,7 @@ public abstract class BatteryConsumer { sb.append("powerComponent=").append(sPowerComponentNames[powerComponent]); dimensionSpecified = true; } if (processState != PROCESS_STATE_ANY) { if (processState != PROCESS_STATE_UNSPECIFIED) { if (dimensionSpecified) { sb.append(", "); } Loading Loading @@ -283,7 +286,7 @@ public abstract class BatteryConsumer { if (mShortString == null) { StringBuilder sb = new StringBuilder(); sb.append(powerComponentIdToString(powerComponent)); if (processState != PROCESS_STATE_ANY) { if (processState != PROCESS_STATE_UNSPECIFIED) { sb.append(':'); sb.append(processStateToString(processState)); } Loading Loading @@ -333,7 +336,7 @@ public abstract class BatteryConsumer { * for all values of other dimensions such as process state. */ public Key getKey(@PowerComponent int componentId) { return mData.getKey(componentId, PROCESS_STATE_ANY); return mData.getKey(componentId, PROCESS_STATE_UNSPECIFIED); } /** Loading @@ -352,7 +355,7 @@ public abstract class BatteryConsumer { */ public double getConsumedPower(@PowerComponent int componentId) { return mPowerComponents.getConsumedPower( mData.getKeyOrThrow(componentId, PROCESS_STATE_ANY)); mData.getKeyOrThrow(componentId, PROCESS_STATE_UNSPECIFIED)); } /** Loading @@ -374,7 +377,7 @@ public abstract class BatteryConsumer { */ public @PowerModel int getPowerModel(@BatteryConsumer.PowerComponent int componentId) { return mPowerComponents.getPowerModel( mData.getKeyOrThrow(componentId, PROCESS_STATE_ANY)); mData.getKeyOrThrow(componentId, PROCESS_STATE_UNSPECIFIED)); } /** Loading Loading @@ -706,7 +709,7 @@ public abstract class BatteryConsumer { if (isSupported) { for (int processState = 0; processState < PROCESS_STATE_COUNT; processState++) { if (processState == PROCESS_STATE_ANY) { if (processState == PROCESS_STATE_UNSPECIFIED) { continue; } Loading Loading @@ -789,7 +792,7 @@ public abstract class BatteryConsumer { @NonNull public T setConsumedPower(@PowerComponent int componentId, double componentPower, @PowerModel int powerModel) { mPowerComponentsBuilder.setConsumedPower(getKey(componentId, PROCESS_STATE_ANY), mPowerComponentsBuilder.setConsumedPower(getKey(componentId, PROCESS_STATE_UNSPECIFIED), componentPower, powerModel); return (T) this; } Loading Loading @@ -825,7 +828,8 @@ public abstract class BatteryConsumer { @NonNull public T setUsageDurationMillis(@UidBatteryConsumer.PowerComponent int componentId, long componentUsageTimeMillis) { mPowerComponentsBuilder.setUsageDurationMillis(getKey(componentId, PROCESS_STATE_ANY), mPowerComponentsBuilder .setUsageDurationMillis(getKey(componentId, PROCESS_STATE_UNSPECIFIED), componentUsageTimeMillis); return (T) this; } Loading
core/java/android/os/BatteryStats.java +18 −1 Original line number Diff line number Diff line Loading @@ -669,7 +669,7 @@ public abstract class BatteryStats implements Parcelable { case BatteryStats.Uid.PROCESS_STATE_FOREGROUND_SERVICE: return BatteryConsumer.PROCESS_STATE_FOREGROUND_SERVICE; default: return BatteryConsumer.PROCESS_STATE_ANY; return BatteryConsumer.PROCESS_STATE_UNSPECIFIED; } } Loading Loading @@ -963,6 +963,13 @@ public abstract class BatteryStats implements Parcelable { public abstract long getNetworkActivityPackets(int type, int which); @UnsupportedAppUsage public abstract long getMobileRadioActiveTime(int which); /** * Returns the amount of time (in microseconds) this UID was in the specified processState. */ public abstract long getMobileRadioActiveTimeInProcessState( @BatteryConsumer.ProcessState int processState); public abstract int getMobileRadioActiveCount(int which); /** Loading Loading @@ -1060,6 +1067,16 @@ public abstract class BatteryStats implements Parcelable { */ public abstract long getMobileRadioMeasuredBatteryConsumptionUC(); /** * Returns the battery consumption (in microcoulombs) of the uid's radio usage when in the * specified process state. * Will return {@link #POWER_DATA_UNAVAILABLE} if data is unavailable. * * {@hide} */ public abstract long getMobileRadioMeasuredBatteryConsumptionUC( @BatteryConsumer.ProcessState int processState); /** * Returns the battery consumption (in microcoulombs) of the screen while on and uid active, * derived from on device power measurement data. Loading
core/java/android/os/BatteryUsageStats.java +1 −1 Original line number Diff line number Diff line Loading @@ -556,7 +556,7 @@ public final class BatteryUsageStats implements Parcelable, Closeable { } String label = BatteryConsumer.powerComponentIdToString(componentId); if (key.processState != BatteryConsumer.PROCESS_STATE_ANY) { if (key.processState != BatteryConsumer.PROCESS_STATE_UNSPECIFIED) { label = label + "(" + BatteryConsumer.processStateToString(key.processState) + ")"; } Loading
core/java/android/os/PowerComponents.java +3 −2 Original line number Diff line number Diff line Loading @@ -18,6 +18,7 @@ package android.os; import static android.os.BatteryConsumer.POWER_COMPONENT_ANY; import static android.os.BatteryConsumer.POWER_COMPONENT_COUNT; import static android.os.BatteryConsumer.PROCESS_STATE_ANY; import static android.os.BatteryConsumer.PROCESS_STATE_UNSPECIFIED; import static android.os.BatteryConsumer.convertMahToDeciCoulombs; import android.annotation.NonNull; Loading Loading @@ -339,7 +340,7 @@ class PowerComponents { serializer.startTag(null, BatteryUsageStats.XML_TAG_COMPONENT); serializer.attributeInt(null, BatteryUsageStats.XML_ATTR_ID, componentId); if (key.processState != PROCESS_STATE_ANY) { if (key.processState != PROCESS_STATE_UNSPECIFIED) { serializer.attributeInt(null, BatteryUsageStats.XML_ATTR_PROCESS_STATE, key.processState); } Loading Loading @@ -398,7 +399,7 @@ class PowerComponents { switch (parser.getName()) { case BatteryUsageStats.XML_TAG_COMPONENT: { int componentId = -1; int processState = PROCESS_STATE_ANY; int processState = PROCESS_STATE_UNSPECIFIED; double powerMah = 0; long durationMs = 0; int model = BatteryConsumer.POWER_MODEL_UNDEFINED; Loading
core/java/com/android/internal/os/BatteryStatsImpl.java +141 −48 File changed.Preview size limit exceeded, changes collapsed. Show changes