Improve broadcast tracing

Include the name of the broadcast that is being handled in the
tracepoint for receivers registered both at runtime and in the
manifest.

Test: TH, traces
Bug: 208747905
Change-Id: I624cd434c5066296e55f4c8bb8c46de65bfe635c
This commit is contained in:
Tim Murray
2022-02-07 19:00:23 -08:00
parent b45c44cb17
commit 291dc44ee9
2 changed files with 15 additions and 2 deletions

View File

@@ -2132,7 +2132,16 @@ public final class ActivityThread extends ClientTransactionHandler
Looper.myLooper().quit();
break;
case RECEIVER:
Trace.traceBegin(Trace.TRACE_TAG_ACTIVITY_MANAGER, "broadcastReceiveComp");
if (Trace.isTagEnabled(Trace.TRACE_TAG_ACTIVITY_MANAGER)) {
ReceiverData rec = (ReceiverData) msg.obj;
if (rec.intent != null) {
Trace.traceBegin(Trace.TRACE_TAG_ACTIVITY_MANAGER,
"broadcastReceiveComp: " + rec.intent.getAction());
} else {
Trace.traceBegin(Trace.TRACE_TAG_ACTIVITY_MANAGER,
"broadcastReceiveComp");
}
}
handleReceiver((ReceiverData)msg.obj);
Trace.traceEnd(Trace.TRACE_TAG_ACTIVITY_MANAGER);
break;

View File

@@ -1734,7 +1734,11 @@ public final class LoadedApk {
return;
}
Trace.traceBegin(Trace.TRACE_TAG_ACTIVITY_MANAGER, "broadcastReceiveReg");
if (Trace.isTagEnabled(Trace.TRACE_TAG_ACTIVITY_MANAGER)) {
Trace.traceBegin(Trace.TRACE_TAG_ACTIVITY_MANAGER,
"broadcastReceiveReg: " + intent.getAction());
}
try {
ClassLoader cl = mReceiver.getClass().getClassLoader();
intent.setExtrasClassLoader(cl);