-
-
Notifications
You must be signed in to change notification settings - Fork 451
Add API to track screens #2981
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
As agreed in the decision log https://www.notion.so/sentry/Add-screen-name-to-app-context-15093e9f572d4df5a3767d3c36f828e3 we'll focus on this at a later point. For the first iteration we'll simply provide the current ViewController / Activity, a manual API will be added later on. |
a possible interim solution which can be reused for Screens API is discussed here: #3719 |
Internal Notion doc about suggested approach and next steps: https://www.notion.so/sentry/Screen-Tracking-for-Android-1b98b10e4b5d8038b8cac3d2812ac09b |
For the insights modules we want to provide metrics on a screen level. As of now, we do not track screens per se, but have automatic (idle) activity transactions which offers similar functionality.
In order to no rely too much on future performance features(like spans without transactions) we could the following:
As a default implementation we can have an Activity based screen provider, as this would work for any Android app.
Implementation Details
It makes sense to stop the transaction as some point, so whenever the screen is closed or a timeout (30s?) is reached the txn gets finished.
Right now it would create it's own idle txn, can be turned into a span instead. Should be simply enough.
Should be similar to what we have right now
This is probably the trickiest one, as the start of the TTID is the moment where the new screen isn't active yet.
If an app is activity based it works like this
Activity.onPause()
is called for the old screen, --> this is the starting point of the TTID/TTFD measurementThe text was updated successfully, but these errors were encountered: