diff options
| author | 2024-10-25 06:55:39 +0000 | |
|---|---|---|
| committer | 2024-10-25 06:55:39 +0000 | |
| commit | daf1e732241900cf66c26109fa1e84cde1d9f018 (patch) | |
| tree | 05c6b65db65b972c99df0496f6de3482c14a3b84 | |
| parent | 66ee007279b59da408e1795c2700a1af330350ee (diff) | |
| parent | a48b8a3ec8acaade53b40a87bca68dc94848e618 (diff) | |
Merge "profcollect: Disable tracing while ADB is connected" into main am: 6511b8ab6b am: a48b8a3ec8
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/3318211
Change-Id: I57808ba57a61c198fd8ce8ce7c251bf62b1b668a
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
| -rw-r--r-- | services/profcollect/src/com/android/server/profcollect/ProfcollectForwardingService.java | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/services/profcollect/src/com/android/server/profcollect/ProfcollectForwardingService.java b/services/profcollect/src/com/android/server/profcollect/ProfcollectForwardingService.java index 105147fe212d..42c171bb4351 100644 --- a/services/profcollect/src/com/android/server/profcollect/ProfcollectForwardingService.java +++ b/services/profcollect/src/com/android/server/profcollect/ProfcollectForwardingService.java @@ -26,6 +26,7 @@ import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.hardware.camera2.CameraManager; +import android.hardware.usb.UsbManager; import android.os.Handler; import android.os.IBinder.DeathRecipient; import android.os.Looper; @@ -67,6 +68,8 @@ public final class ProfcollectForwardingService extends SystemService { private int mUsageSetting; private boolean mUploadEnabled; + private boolean mAdbActive; + private IProfCollectd mIProfcollect; private static ProfcollectForwardingService sSelfService; private final Handler mHandler = new ProfcollectdHandler(IoThread.getHandler().getLooper()); @@ -84,6 +87,14 @@ public final class ProfcollectForwardingService extends SystemService { Log.d(LOG_TAG, "Received broadcast to pack and upload reports"); createAndUploadReport(sSelfService); } + if (UsbManager.ACTION_USB_STATE.equals(intent.getAction())) { + boolean connected = intent.getBooleanExtra(UsbManager.USB_CONNECTED, false); + boolean isADB = intent.getBooleanExtra(UsbManager.USB_FUNCTION_ADB, false); + if (isADB) { + Log.d(LOG_TAG, "Received broadcast that ADB became " + connected); + mAdbActive = connected; + } + } } }; @@ -106,8 +117,12 @@ public final class ProfcollectForwardingService extends SystemService { mUploadEnabled = context.getResources().getBoolean(R.bool.config_profcollectReportUploaderEnabled); + // TODO: ADB might already be active when our service started. + mAdbActive = false; + final IntentFilter filter = new IntentFilter(); filter.addAction(INTENT_UPLOAD_PROFILES); + filter.addAction(UsbManager.ACTION_USB_STATE); context.registerReceiver(mBroadcastReceiver, filter, Context.RECEIVER_NOT_EXPORTED); } @@ -281,6 +296,9 @@ public final class ProfcollectForwardingService extends SystemService { if (mIProfcollect == null) { return; } + if (mAdbActive) { + return; + } if (Utils.withFrequency("applaunch_trace_freq", 5)) { Utils.traceSystem(mIProfcollect, "applaunch"); } @@ -303,6 +321,9 @@ public final class ProfcollectForwardingService extends SystemService { if (mIProfcollect == null) { return; } + if (mAdbActive) { + return; + } if (Utils.withFrequency("dex2oat_trace_freq", 25)) { // Dex2oat could take a while before it starts. Add a short delay before start tracing. Utils.traceSystem(mIProfcollect, "dex2oat", /* delayMs */ 1000); |