Loading core/java/android/os/BatteryUsageStats.java +7 −15 Original line number Diff line number Diff line Loading @@ -368,27 +368,19 @@ public final class BatteryUsageStats implements Parcelable { }; /** Returns a proto (as used for atoms.proto) corresponding to this BatteryUsageStats. */ public byte[] getStatsProto(long sessionEndTimestampMs) { final long sessionStartMillis = getStatsStartTimestamp(); // TODO(b/187223764): Use the getStatsEndTimestamp() instead, once that is added. final long sessionEndMillis = sessionEndTimestampMs; final long sessionDurationMillis = sessionEndTimestampMs - getStatsStartTimestamp(); public byte[] getStatsProto() { final BatteryConsumer deviceBatteryConsumer = getAggregateBatteryConsumer( AGGREGATE_BATTERY_CONSUMER_SCOPE_DEVICE); final int sessionDischargePercentage = getDischargePercentage(); final ProtoOutputStream proto = new ProtoOutputStream(); proto.write(BatteryUsageStatsAtomsProto.SESSION_START_MILLIS, sessionStartMillis); proto.write(BatteryUsageStatsAtomsProto.SESSION_END_MILLIS, sessionEndMillis); proto.write(BatteryUsageStatsAtomsProto.SESSION_DURATION_MILLIS, sessionDurationMillis); proto.write(BatteryUsageStatsAtomsProto.SESSION_START_MILLIS, getStatsStartTimestamp()); proto.write(BatteryUsageStatsAtomsProto.SESSION_END_MILLIS, getStatsEndTimestamp()); proto.write(BatteryUsageStatsAtomsProto.SESSION_DURATION_MILLIS, getStatsDuration()); deviceBatteryConsumer.writeStatsProto(proto, BatteryUsageStatsAtomsProto.DEVICE_BATTERY_CONSUMER); writeUidBatteryConsumersProto(proto); proto.write(BatteryUsageStatsAtomsProto.SESSION_DISCHARGE_PERCENTAGE, sessionDischargePercentage); getDischargePercentage()); return proto.getBytes(); } Loading @@ -399,8 +391,8 @@ public final class BatteryUsageStats implements Parcelable { private void writeUidBatteryConsumersProto(ProtoOutputStream proto) { final List<UidBatteryConsumer> consumers = getUidBatteryConsumers(); // TODO: Sort the list by power consumption. If during the for, proto.getRawSize() > 45kb, // truncate the remainder of the list. // TODO(b/189225426): Sort the list by power consumption. If during the for, // proto.getRawSize() > 45kb, truncate the remainder of the list. final int size = consumers.size(); for (int i = 0; i < size; i++) { final UidBatteryConsumer consumer = consumers.get(i); Loading core/tests/batterystatstests/BatteryUsageStatsProtoTests/src/com/android/internal/os/BatteryUsageStatsPulledTest.java +3 −4 Original line number Diff line number Diff line Loading @@ -48,9 +48,8 @@ public class BatteryUsageStatsPulledTest { @Test public void testGetStatsProto() { final long sessionEndTimestampMs = 1050; final BatteryUsageStats bus = buildBatteryUsageStats(); final byte[] bytes = bus.getStatsProto(sessionEndTimestampMs); final byte[] bytes = bus.getStatsProto(); BatteryUsageStatsAtomsProto proto; try { proto = BatteryUsageStatsAtomsProto.parseFrom(bytes); Loading @@ -60,9 +59,9 @@ public class BatteryUsageStatsPulledTest { } assertEquals(bus.getStatsStartTimestamp(), proto.sessionStartMillis); assertEquals(sessionEndTimestampMs, proto.sessionEndMillis); assertEquals(bus.getStatsEndTimestamp(), proto.sessionEndMillis); assertEquals( sessionEndTimestampMs - bus.getStatsStartTimestamp(), bus.getStatsEndTimestamp() - bus.getStatsStartTimestamp(), proto.sessionDurationMillis); assertEquals(bus.getDischargePercentage(), proto.sessionDischargePercentage); Loading services/core/java/com/android/server/am/BatteryStatsService.java +1 −3 Original line number Diff line number Diff line Loading @@ -771,9 +771,7 @@ public final class BatteryStatsService extends IBatteryStats.Stub default: throw new UnsupportedOperationException("Unknown tagId=" + atomTag); } // TODO(b/187223764): busTime won't be needed once end_session is a field in BUS. final long busTime = System.currentTimeMillis(); final byte[] statsProto = bus.getStatsProto(busTime); final byte[] statsProto = bus.getStatsProto(); data.add(FrameworkStatsLog.buildStatsEvent(atomTag, statsProto)); Loading Loading
core/java/android/os/BatteryUsageStats.java +7 −15 Original line number Diff line number Diff line Loading @@ -368,27 +368,19 @@ public final class BatteryUsageStats implements Parcelable { }; /** Returns a proto (as used for atoms.proto) corresponding to this BatteryUsageStats. */ public byte[] getStatsProto(long sessionEndTimestampMs) { final long sessionStartMillis = getStatsStartTimestamp(); // TODO(b/187223764): Use the getStatsEndTimestamp() instead, once that is added. final long sessionEndMillis = sessionEndTimestampMs; final long sessionDurationMillis = sessionEndTimestampMs - getStatsStartTimestamp(); public byte[] getStatsProto() { final BatteryConsumer deviceBatteryConsumer = getAggregateBatteryConsumer( AGGREGATE_BATTERY_CONSUMER_SCOPE_DEVICE); final int sessionDischargePercentage = getDischargePercentage(); final ProtoOutputStream proto = new ProtoOutputStream(); proto.write(BatteryUsageStatsAtomsProto.SESSION_START_MILLIS, sessionStartMillis); proto.write(BatteryUsageStatsAtomsProto.SESSION_END_MILLIS, sessionEndMillis); proto.write(BatteryUsageStatsAtomsProto.SESSION_DURATION_MILLIS, sessionDurationMillis); proto.write(BatteryUsageStatsAtomsProto.SESSION_START_MILLIS, getStatsStartTimestamp()); proto.write(BatteryUsageStatsAtomsProto.SESSION_END_MILLIS, getStatsEndTimestamp()); proto.write(BatteryUsageStatsAtomsProto.SESSION_DURATION_MILLIS, getStatsDuration()); deviceBatteryConsumer.writeStatsProto(proto, BatteryUsageStatsAtomsProto.DEVICE_BATTERY_CONSUMER); writeUidBatteryConsumersProto(proto); proto.write(BatteryUsageStatsAtomsProto.SESSION_DISCHARGE_PERCENTAGE, sessionDischargePercentage); getDischargePercentage()); return proto.getBytes(); } Loading @@ -399,8 +391,8 @@ public final class BatteryUsageStats implements Parcelable { private void writeUidBatteryConsumersProto(ProtoOutputStream proto) { final List<UidBatteryConsumer> consumers = getUidBatteryConsumers(); // TODO: Sort the list by power consumption. If during the for, proto.getRawSize() > 45kb, // truncate the remainder of the list. // TODO(b/189225426): Sort the list by power consumption. If during the for, // proto.getRawSize() > 45kb, truncate the remainder of the list. final int size = consumers.size(); for (int i = 0; i < size; i++) { final UidBatteryConsumer consumer = consumers.get(i); Loading
core/tests/batterystatstests/BatteryUsageStatsProtoTests/src/com/android/internal/os/BatteryUsageStatsPulledTest.java +3 −4 Original line number Diff line number Diff line Loading @@ -48,9 +48,8 @@ public class BatteryUsageStatsPulledTest { @Test public void testGetStatsProto() { final long sessionEndTimestampMs = 1050; final BatteryUsageStats bus = buildBatteryUsageStats(); final byte[] bytes = bus.getStatsProto(sessionEndTimestampMs); final byte[] bytes = bus.getStatsProto(); BatteryUsageStatsAtomsProto proto; try { proto = BatteryUsageStatsAtomsProto.parseFrom(bytes); Loading @@ -60,9 +59,9 @@ public class BatteryUsageStatsPulledTest { } assertEquals(bus.getStatsStartTimestamp(), proto.sessionStartMillis); assertEquals(sessionEndTimestampMs, proto.sessionEndMillis); assertEquals(bus.getStatsEndTimestamp(), proto.sessionEndMillis); assertEquals( sessionEndTimestampMs - bus.getStatsStartTimestamp(), bus.getStatsEndTimestamp() - bus.getStatsStartTimestamp(), proto.sessionDurationMillis); assertEquals(bus.getDischargePercentage(), proto.sessionDischargePercentage); Loading
services/core/java/com/android/server/am/BatteryStatsService.java +1 −3 Original line number Diff line number Diff line Loading @@ -771,9 +771,7 @@ public final class BatteryStatsService extends IBatteryStats.Stub default: throw new UnsupportedOperationException("Unknown tagId=" + atomTag); } // TODO(b/187223764): busTime won't be needed once end_session is a field in BUS. final long busTime = System.currentTimeMillis(); final byte[] statsProto = bus.getStatsProto(busTime); final byte[] statsProto = bus.getStatsProto(); data.add(FrameworkStatsLog.buildStatsEvent(atomTag, statsProto)); Loading