diff options
| author | 2023-01-26 19:22:46 +0000 | |
|---|---|---|
| committer | 2023-03-24 17:44:51 +0000 | |
| commit | 072721c6653be9e7d80cd352a526582e525415e1 (patch) | |
| tree | c7a4055f5094a4e16c99424e64cfd6dff35d4155 | |
| parent | fd605f80117c24617047ebbb1da93572b30264d8 (diff) | |
Adding in FGS metrics hook to CDM
Test: manual test on device
Change-Id: I5118797fe8a64347f329dea9e9d60790339ce018
Bug: b/263304156
| -rw-r--r-- | core/java/android/companion/CompanionDeviceManager.java | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/core/java/android/companion/CompanionDeviceManager.java b/core/java/android/companion/CompanionDeviceManager.java index a522cc04eff1..af5c6dd8e977 100644 --- a/core/java/android/companion/CompanionDeviceManager.java +++ b/core/java/android/companion/CompanionDeviceManager.java @@ -30,6 +30,8 @@ import android.annotation.SystemApi; import android.annotation.SystemService; import android.annotation.UserHandleAware; import android.app.Activity; +import android.app.ActivityManager; +import android.app.ActivityManagerInternal; import android.app.NotificationManager; import android.app.PendingIntent; import android.bluetooth.BluetoothAdapter; @@ -41,6 +43,7 @@ import android.content.Intent; import android.content.IntentSender; import android.content.pm.PackageManager; import android.net.MacAddress; +import android.os.Binder; import android.os.Handler; import android.os.OutcomeReceiver; import android.os.ParcelFileDescriptor; @@ -53,6 +56,7 @@ import android.util.SparseArray; import com.android.internal.annotations.GuardedBy; import com.android.internal.util.CollectionUtils; +import com.android.server.LocalServices; import libcore.io.IoUtils; @@ -989,6 +993,15 @@ public final class CompanionDeviceManager { ExceptionUtils.propagateIfInstanceOf(e.getCause(), DeviceNotAssociatedException.class); throw e.rethrowFromSystemServer(); } + int callingUid = Binder.getCallingUid(); + int callingPid = Binder.getCallingPid(); + ActivityManagerInternal managerInternal = + LocalServices.getService(ActivityManagerInternal.class); + if (managerInternal != null) { + managerInternal + .logFgsApiBegin(ActivityManager.FOREGROUND_SERVICE_API_TYPE_CDM, + callingUid, callingPid); + } } /** @@ -1021,6 +1034,15 @@ public final class CompanionDeviceManager { } catch (RemoteException e) { ExceptionUtils.propagateIfInstanceOf(e.getCause(), DeviceNotAssociatedException.class); } + int callingUid = Binder.getCallingUid(); + int callingPid = Binder.getCallingPid(); + ActivityManagerInternal managerInternal = + LocalServices.getService(ActivityManagerInternal.class); + if (managerInternal != null) { + managerInternal + .logFgsApiEnd(ActivityManager.FOREGROUND_SERVICE_API_TYPE_CDM, + callingUid, callingPid); + } } /** |