How the SDK works
Initialization
Section titled InitializationThe way our SDK works is by auto-starting with the application launch and attaching to the current process in order to intercept the events and gestures we are interested in.
See Session Replay Initialization to learn how Session Replay is initialized.
Configuration
Section titled ConfigurationOnce started, our SDK fetches its configuration from our servers.
Then, depending on the segmentation size (defined by our team when you sign a contract) and the user consent status, it will start collecting analytics data from system and user events it detects from the runtime.
Data collection
Section titled Data collectionAnalytics data collection
Section titled Analytics data collectionThe SDK monitors the application lifecycle events, the view hierarchy, and generates data from the behavior of the app, the content of the screen and the user interactions.
These events are then locally stored, and eventually sent to our servers in batches. We then aggregate that data to create usable visual information into our Web Application, which you use to gather insights.
Session Replay data collection
Section titled Session Replay data collectionSee Session Replay Initialization to learn how Session Replay data collection works.
Sending data
Section titled Sending dataSending analytics data
Section titled Sending analytics dataAnalytics data are sent in batches of maximum 50 events. Requests are triggered when network conditions allow for the server to be reached and:
- The current batch of events has reached 50
- Or the app is put in background
Our requests use lowPriority
↗.
Sending Session Replay Data
Section titled Sending Session Replay DataSee Session Replay Requests to learn more about how Session Replay data is sent.
Sending crash Data
Section titled Sending crash DataSee Send Crash data to learn more about how crash data is sent.
Session definition
Section titled Session definitionA session represents a single period of user interaction in the app.
In Contentsquare, the SDK marks the start of a session when an app start
or app show
event is first detected.
A session ends when the time spent outside the app reaches 30 minutes. This is the default value which be changed upon request.
If the app is put in the background or killed (intentionally by the user or by the OS) and the user comes back within the next 30 minutes, subsequent events are considered part of the same session.