SDK reports all the activity to your application so that you can transmit such data to your analytics system.
Once the asynchronous loading of assets has commenced:
Event name in analytics | Event parameters in analytics | Parameter name in SDK (for developers) |
start resources loading | // projectId // prefetchMode // environment
| .startResourcesLoading |
Once the assets have finished loading asynchronously and meet the criteria for prefetch mode rules, the subsequent event will be activated:
Event name in analytics | Event parameters in analytics | Parameter name in SDK (for developers) |
json and assets loaded | // jsonLoadingTime // assetsLoadingTime // prefetchMode // projectName // projectId // onboardingName // onboardingId
| .jsonAndPrefetchModeAssetsLoaded |
Once you start onboarding in user events, you will see the following:
Event name in analytics | Event parameters in analytics | Parameter name in SDK (for developers) |
start onboarding with parameters * | // projectName // projectId // onboardingName // onboardingId // prefetchMode
// onboardingSourceType: .url / .jsonName
| .startOnboarding |
* In case "start onboarding with parameters" occurs, based on the "onboardingSourceType" two distinct additional parameters will be introduced.
If onboardingSourceType = jsonName | If onboardingSourceType = url |
// timeout // jsonName | // url // time ( will be 0 in case jsonAndPrefetchModeAssetsLoaded was called) |
If the A/B test is published and received, then you will see the following event:
Event name in analytics | Event parameters in analytics | Parameter name in SDK (for developers) |
A/B test loaded | // abtestName // abtestThreshold // abtestId // abtestGroup | .abTestLoaded |
After the completion of asset loading, whether successful or not:
Event name in analytics | Event parameters in analytics | Parameter name in SDK (for developers) |
all assets loaded | // time // assetsLoadedSuccess | .allAssetsLoaded |
When the onboarding screen appears for the user:
Event name in analytics | Event parameters in analytics | Parameter name in SDK (for developers) |
screen appeared | // screenID // screenName | .screenDidAppear |
In case the custom screen appearance, you will see as following:
Event name in analytics | Event parameters in analytics | Parameter name in SDK (for developers) |
custom screen appearance request | // screenName | .customScreenRequested |
After the screen is shown to the user, different buttons can be clicked. Nav bar can contain 2 buttons:
Event name in analytics | Event parameters in analytics | Parameter name in SDK (for developers) | Image as an example |
left navbar button pressed | // screenID // screenName | .leftNavbarButtonPressed |
|
right navbar button pressed | // screenID // screenName | .rightNavbarButtonPressed |
|
The screen footer can contain 2 buttons as well:
Event name in analytics | Event parameters in analytics | Parameter name in SDK (for developers) | Image as an example |
first footer button pressed | // screenID // screenName | .firstFooterButtonPressed |
|
second footer button pressed | // screenID // screenName | .secondFooterButtonPressed |
|
In the screens that allow the user to enter data, once the user enters values (including clicking on table cells), an option will be displayed whenever the values change. Screens for which the parameter works:
Table Multiple Selection | |
Table Single Selection | |
Title/Subtitle/Field | |
2 Column/Multiple Selection | |
2 Column/Single Selection | |
Title/Subtitle/Calendar | |
Image/Title/Subtitle/Picker and Title/Subtitle/Picker | |
Image/Title/Subtitle/Selection |
This parameter will also be sent when moving to the next screen (there will be a value where the user stopped:
Event name in analytics | Event parameters in analytics | Parameter name in SDK (for developers) |
user updated value | // screenID // screenName // userInputValue // buttonTitle | .userUpdatedValue |
When permissions requests are configured on the screen and permissions request is received:
Event name in analytics | Event parameters in analytics | Parameter name in SDK (for developers) |
a response to the permission request was received | // screenID // screenName // permissionType * // permissionGranted **
| .permissionResponseReceived |
*The permissionType parameter is categorized into two types based on the setting specified in the screen and implemented in the code.
If ad permissions were requested on the screen | If notification permissions were requested on the screen |
permissionType: adsPermission | permissionType: pushNotificationPermission |
**The parameter permissionGranted
can have two values based on user input.
If permissions were allowed | If permissions were not allowed |
permissionGranted: true | permissionGranted: false |
After the user has clicked the button that leads to the transition to the next screen:
Event name in analytics | Event parameters in analytics | Parameter name in SDK (for developers) |
screen disappeared | // screenID // screenName // userInputValue // nextScreenId | .screenDisappeared |
If the user moves forward to the next screen from the custom screen:
Event name in analytics | Event parameters in analytics | Parameter name in SDK (for developers) |
custom screen disapeared | // screenName // screenID // customScreenUserInputValue | .customScreenDisappeared |
If the custom screen is added to the flow but is not implemented in your app code correctly:
Event name in analytics | Event parameters in analytics | Parameter name in SDK (for developers) |
could not find custom screen | // screenName // screenID | .customScreenNotImplementedInCodeOnboardingFinished |
If the system moves to the next screen using a timer (enabled by default for the following screens: Slider, Progress Bar/Title and can be enabled on any screen by setting Timer option):
Event name in analytics | Event parameters in analytics | Parameter name in SDK (for developers) |
switched to a new screen on a timer | // screenID // screenName | .switchedToNewScreenOnTimer |
If the sequence of the onboarding screen is finished by the user (the user moves forward from the last onboarding screen):
Event name in analytics | Event parameters in analytics | Parameter name in SDK (for developers) |
onboarding finished | // userInputValues | .onboardingFinished |