From a12c7d6a8d2f6926413ec61acdad5e59d5b694f4 Mon Sep 17 00:00:00 2001 From: Simon MacMullen Date: Fri, 25 Nov 2022 12:51:11 +0000 Subject: [PATCH] Store MCC and MNC as system properties on userdebug builds. This is so that we can read the properties, and thus infer the carrier, in Perfetto traces. Bug: 259231861 Test: Recorded Perfetto trace. Change-Id: Iddad52f28ac743cccbf8f6bf80d2d7d54c6a769b --- .../com/android/server/wm/ActivityTaskManagerService.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/services/core/java/com/android/server/wm/ActivityTaskManagerService.java b/services/core/java/com/android/server/wm/ActivityTaskManagerService.java index 7dd8770922e87..eb04687d7d0c0 100644 --- a/services/core/java/com/android/server/wm/ActivityTaskManagerService.java +++ b/services/core/java/com/android/server/wm/ActivityTaskManagerService.java @@ -4386,6 +4386,13 @@ public class ActivityTaskManagerService extends IActivityTaskManager.Stub { values.touchscreen, values.uiMode); + // Note: certain tests currently run as platform_app which is not allowed + // to set debug system properties. To ensure that system properties are set + // only when allowed, we check the current UID. + if (Process.myUid() == Process.SYSTEM_UID) { + SystemProperties.set("debug.tracing.mcc", Integer.toString(values.mcc)); + SystemProperties.set("debug.tracing.mnc", Integer.toString(values.mnc)); + } if (!initLocale && !values.getLocales().isEmpty() && values.userSetLocale) { final LocaleList locales = values.getLocales();