diff options
| author | 2023-11-07 00:44:28 +0000 | |
|---|---|---|
| committer | 2023-11-07 00:44:28 +0000 | |
| commit | 731829eccff2890aa1157eae708a70904254c088 (patch) | |
| tree | 41cbf643946baee667a58d1074d2eb68d2102bd8 | |
| parent | b6342e0aada372cdcb877112ecffcacef4257085 (diff) | |
| parent | 3572b82e64aeb031c9b04abd6a3aa914ab2dec5d (diff) | |
Merge "Modify StatsPullAtomService: Log network type in WW tagged traffic data." into main
| -rw-r--r-- | services/core/java/com/android/server/stats/pull/StatsPullAtomService.java | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/services/core/java/com/android/server/stats/pull/StatsPullAtomService.java b/services/core/java/com/android/server/stats/pull/StatsPullAtomService.java index 9128974fa9d3..76ee84571b04 100644 --- a/services/core/java/com/android/server/stats/pull/StatsPullAtomService.java +++ b/services/core/java/com/android/server/stats/pull/StatsPullAtomService.java @@ -1281,12 +1281,19 @@ public class StatsPullAtomService extends SystemService { private void addBytesTransferByTagAndMeteredAtoms(@NonNull NetworkStatsExt statsExt, @NonNull List<StatsEvent> pulledData) { + // Workaround for 5G NSA mode, see {@link NetworkStatsManager#NETWORK_TYPE_5G_NSA}. + // 5G NSA mode means the primary cell is LTE with a secondary connection to an + // NR cell. To mitigate risk, NetworkStats is currently storing this state as + // a fake RAT type rather than storing the boolean separately. + final boolean is5GNsa = statsExt.ratType == NetworkStatsManager.NETWORK_TYPE_5G_NSA; + for (NetworkStats.Entry entry : statsExt.stats) { pulledData.add(FrameworkStatsLog.buildStatsEvent( FrameworkStatsLog.BYTES_TRANSFER_BY_TAG_AND_METERED, entry.getUid(), entry.getMetered() == NetworkStats.METERED_YES, entry.getTag(), entry.getRxBytes(), entry.getRxPackets(), entry.getTxBytes(), - entry.getTxPackets())); + entry.getTxPackets(), + is5GNsa ? TelephonyManager.NETWORK_TYPE_LTE : statsExt.ratType)); } } |