How the SDK works
Initialization
Section titled InitializationFlutter SDK requires to wrap the application into a ContentsquareRoot
widget. After that, the SDK works by automatically launching when the app starts.
Configuration
Section titled ConfigurationOnce started, our SDK fetches its config from our servers, and then depending on the segmentation size (defined by our team when you sign a contract) it will start collecting data from system and user events it detects from the runtime.
Tracking
Section titled TrackingThe SDK monitors the application lifecycle events and the view hierarchy, and generates analytics data from the behavior of the app, the content of the screen and the interaction of the user. 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.
Sending data
Section titled Sending dataCheckout the Native Android SDK documentation for Sending data
Checkout the Native iOS SDK documentation for Sending data
Session definition
Section titled Session definitionA session represents a single period of user interaction in the app.
In Contentsquare, a session ends when the user has spent a certain amount of time outside the app. The SDK checks this when an app start
or app show
event is detected. This time spent outside the app, ending a session is set to 30 minutes by default. But it can be changed if it is requested.
If the app is put in the background or killed (intentionally by the user or by the OS) but the user comes back within 30 minutes, it will not end the session. These events are considered to be part of a session.