Assigned
Status Update
Comments
ca...@google.com <ca...@google.com> #2
error instantiating androidx.tracing.perfetto.StartupTracingConfigStoreIsEnabledGate
This looks like a minification issue
- Are you using either minification of your app, or in your instrumented test? If so, can you try adding a keep rule for that class?
- Is this class present in your apk's dex files, if you open the apk in studio? (if this is an instrumented test, check both your app and test)
- Are you depending on
androidx.compose.runtime:runtime-tracing
viaandroidTestImplementation
orimplementation
, and from what type of module? - What version of AGP are you using? I would expect the
would mean the library doesn't need an explicit keep rule, but it could bemanifest entry for this class depending on your AGP version / how the dependency is declared (fixed in AGP 8.6 canary 5, but a keep rule should work around it)b/328649293
Edit: disregard, I doubt Robolectric is using any of the minification codepaths.
br...@snapchat.com <br...@snapchat.com> #3
- Let me check
- Using
implementation
and it's added at the project level so all modules using compose are getting it - I'm on
8.1.1
Description
Background
Recently the following methods were introduced:https://android-review.googlesource.com/c/platform/frameworks/base/+/2048185 .
android.os.Trace.asyncTraceForTrackBegin
andandroid.os.Trace.asyncTraceForTrackEnd
inThis solves a longstanding problem for us where the growing usage of async spans has led to an unwieldy number of tracks in our traces. We've had to work around this problem by forking Perfetto and building out our own async span grouping mechanism using
:
as a grouping delimiter. This can be seen in the attached screenshot where we usepll:
(Page Load Latency) as a grouping mechanism.Ask
If possible, it would be great to backport these methods to older OS versions if possible. If I understand correctly, it seems that it should be doable by just writing the new events into the relevant file descriptor in new event types is managed on the Perfetto side .
tracefs
as the handling of the