A trace is a report of performance data captured between two points in time in your app. When installed, the Performance Monitoring SDK automatically provides the following types of traces:
- App start traces, which measure the time between when the user opens the app and when the app is responsive.
- App in background traces, which measure the time when the app is running in the background.
- App in foreground traces, which measure the time when the app is running in the foreground and available to the user.
Performance Monitoring is currently in beta release.
Automatic trace definitions
Performance Monitoring uses method calls and notifications in your app to determine when each type of automatic trace starts and stops:
| Trace Name | iOS | Android |
|---|---|---|
| App start | Starts when the application loads the first Object to memory
and stops after the first successful run loop that occurs after the
application receives the
UIApplicationDidBecomeActiveNotification notification.
|
Starts when the app's FirebasePerfProvider
ContentProvider completes its onCreate
method and stops when the first activity's onResume() method
is called.
|
| App in background | Starts when the application receives the
UIApplicationWillResignActiveNotification notification and
stops when it receives the
UIApplicationDidBecomeActiveNotification notification.
|
Starts when the last activity to leave the foreground has its
onStop() method called and stops when the first activity
to reach the foreground has its onResume() method called.
|
| App in foreground | Starts when the application receives the
UIApplicationDidBecomeActiveNotification notification and
stops when it receives the
UIApplicationWillResignActiveNotification notification.
|
Starts when the first activity to reach the foreground has its
onResume() method called and stops when the last activity
to leave the foreground has its onStop() method called.
|

