Merge "Have BatteryStatsImpl use the public NetworkStats API"

This commit is contained in:
Treehugger Robot
2022-01-25 07:58:21 +00:00
committed by Gerrit Code Review

View File

@@ -11599,61 +11599,60 @@ public class BatteryStatsImpl extends BatteryStats {
long totalTxPackets = 0; long totalTxPackets = 0;
long totalRxPackets = 0; long totalRxPackets = 0;
if (delta != null) { if (delta != null) {
NetworkStats.Entry entry = new NetworkStats.Entry(); for (NetworkStats.Entry entry : delta) {
final int size = delta.size();
for (int i = 0; i < size; i++) {
entry = delta.getValues(i, entry);
if (DEBUG_ENERGY) { if (DEBUG_ENERGY) {
Slog.d(TAG, "Wifi uid " + entry.uid + ": delta rx=" + entry.rxBytes Slog.d(TAG, "Wifi uid " + entry.getUid()
+ " tx=" + entry.txBytes + " rxPackets=" + entry.rxPackets + ": delta rx=" + entry.getRxBytes()
+ " txPackets=" + entry.txPackets); + " tx=" + entry.getTxBytes()
+ " rxPackets=" + entry.getRxPackets()
+ " txPackets=" + entry.getTxPackets());
} }
if (entry.rxBytes == 0 && entry.txBytes == 0) { if (entry.getRxBytes() == 0 && entry.getTxBytes() == 0) {
// Skip the lookup below since there is no work to do. // Skip the lookup below since there is no work to do.
continue; continue;
} }
final Uid u = getUidStatsLocked(mapUid(entry.uid), elapsedRealtimeMs, uptimeMs); final Uid u = getUidStatsLocked(mapUid(entry.getUid()),
if (entry.rxBytes != 0) { elapsedRealtimeMs, uptimeMs);
u.noteNetworkActivityLocked(NETWORK_WIFI_RX_DATA, entry.rxBytes, if (entry.getRxBytes() != 0) {
entry.rxPackets); u.noteNetworkActivityLocked(NETWORK_WIFI_RX_DATA, entry.getRxBytes(),
if (entry.set == NetworkStats.SET_DEFAULT) { // Background transfers entry.getRxPackets());
u.noteNetworkActivityLocked(NETWORK_WIFI_BG_RX_DATA, entry.rxBytes, if (entry.getSet() == NetworkStats.SET_DEFAULT) { // Background transfers
entry.rxPackets); u.noteNetworkActivityLocked(NETWORK_WIFI_BG_RX_DATA, entry.getRxBytes(),
entry.getRxPackets());
} }
mNetworkByteActivityCounters[NETWORK_WIFI_RX_DATA].addCountLocked( mNetworkByteActivityCounters[NETWORK_WIFI_RX_DATA].addCountLocked(
entry.rxBytes); entry.getRxBytes());
mNetworkPacketActivityCounters[NETWORK_WIFI_RX_DATA].addCountLocked( mNetworkPacketActivityCounters[NETWORK_WIFI_RX_DATA].addCountLocked(
entry.rxPackets); entry.getRxPackets());
// TODO(b/182845426): What if u was a mapped isolated uid? Shouldn't we sum? // TODO(b/182845426): What if u was a mapped isolated uid? Shouldn't we sum?
rxPackets.put(u.getUid(), entry.rxPackets); rxPackets.put(u.getUid(), entry.getRxPackets());
// Sum the total number of packets so that the Rx Power can // Sum the total number of packets so that the Rx Power can
// be evenly distributed amongst the apps. // be evenly distributed amongst the apps.
totalRxPackets += entry.rxPackets; totalRxPackets += entry.getRxPackets();
} }
if (entry.txBytes != 0) { if (entry.getTxBytes() != 0) {
u.noteNetworkActivityLocked(NETWORK_WIFI_TX_DATA, entry.txBytes, u.noteNetworkActivityLocked(NETWORK_WIFI_TX_DATA, entry.getTxBytes(),
entry.txPackets); entry.getTxPackets());
if (entry.set == NetworkStats.SET_DEFAULT) { // Background transfers if (entry.getSet() == NetworkStats.SET_DEFAULT) { // Background transfers
u.noteNetworkActivityLocked(NETWORK_WIFI_BG_TX_DATA, entry.txBytes, u.noteNetworkActivityLocked(NETWORK_WIFI_BG_TX_DATA, entry.getTxBytes(),
entry.txPackets); entry.getTxPackets());
} }
mNetworkByteActivityCounters[NETWORK_WIFI_TX_DATA].addCountLocked( mNetworkByteActivityCounters[NETWORK_WIFI_TX_DATA].addCountLocked(
entry.txBytes); entry.getTxBytes());
mNetworkPacketActivityCounters[NETWORK_WIFI_TX_DATA].addCountLocked( mNetworkPacketActivityCounters[NETWORK_WIFI_TX_DATA].addCountLocked(
entry.txPackets); entry.getTxPackets());
// TODO(b/182845426): What if u was a mapped isolated uid? Shouldn't we sum? // TODO(b/182845426): What if u was a mapped isolated uid? Shouldn't we sum?
txPackets.put(u.getUid(), entry.txPackets); txPackets.put(u.getUid(), entry.getTxPackets());
// Sum the total number of packets so that the Tx Power can // Sum the total number of packets so that the Tx Power can
// be evenly distributed amongst the apps. // be evenly distributed amongst the apps.
totalTxPackets += entry.txPackets; totalTxPackets += entry.getTxPackets();
} }
// Calculate consumed energy for this uid. Only do so if WifiReporting isn't // Calculate consumed energy for this uid. Only do so if WifiReporting isn't
@@ -11681,7 +11680,7 @@ public class BatteryStatsImpl extends BatteryStats {
uidEstimatedConsumptionMah.add(u.getUid(), uidEstimatedConsumptionMah.add(u.getUid(),
mWifiPowerCalculator.calcPowerWithoutControllerDataMah( mWifiPowerCalculator.calcPowerWithoutControllerDataMah(
entry.rxPackets, entry.txPackets, entry.getRxPackets(), entry.getTxPackets(),
uidRunningMs, uidScanMs, uidBatchScanMs)); uidRunningMs, uidScanMs, uidBatchScanMs));
} }
} }