Configuration
Full configuration reference for the MAUI SDK
This page provides an overview of all configuration parameters for the SDK. In addition to the universal parameters, there are Android-specific and iOS-specific parameters.
Refer to Initialize the SDK for instructions.
Configuration parameters
The following parameters are specified in a Configuration
object. Refer to BloomreachSDK/Lib/Models/Configuration.cs for the complete definition.
-
ProjectToken
(required)- Your project token. You can find this in the Engagement web app under
Project settings
>Access management
>API
.
- Your project token. You can find this in the Engagement web app under
-
Authorization
(required)- Your Engagement API key.
- The token must be an Engagement public key. See Mobile SDKs API Access Management for details.
- For more information, refer to Exponea API documentation.
-
BaseUrl
- Your API base URL which can be found in the Engagement web app under
Project settings
>Access management
>API
. - Default value
https://api.exponea.com
. - If you have a custom base URL, you must set this property.
- Your API base URL which can be found in the Engagement web app under
-
ProjectRouteMap
- If you need to track some events to a different Engagement project, you can define a mapping between event types and Engagement projects.
- An event is always tracked to the default project and any projects it is mapped to.
- Refer to Project Mapping for details.
-
DefaultProperties
- A list of properties to include in all tracking events.
- You can change these properties at runtime by calling
BloomreachSDK.SetDefaultProperties
.
-
AllowDefaultCustomerProperties
- If true, default properties are also applied to 'identifyCustomer' events.
-
AutomaticSessionTracking
- Flag to control the automatic tracking of
session_start
andsession_end
events. - Default value:
true
- Flag to control the automatic tracking of
-
SessionTimeout
- The session is the actual time spent in the app. It starts when the app is launched and ends when the app goes into the background.
- When the application goes into the background, the SDK doesn't track the end of the session right away but waits a bit for the user to come back before doing so. You can configure the timeout by setting this property.
- Read more about Tracking Sessions
-
TokenTrackFrequency
- Indicates the frequency with which the SDK should track the push notification token to Engagement.
- Default value:
TokenTrackFrequency.OnTokenChange
- Possible values:
OnTokenChange
- tracks push token if it differs from a previously tracked oneEveryLaunch
- always tracks push tokenDaily
- tracks push token once per day
-
MaxTries
- Controls how many times the SDK should attempt to flush an event before aborting. Useful for example in case the API is down or some other temporary error happens.
- The SDK will consider the data to be flushed if this number is exceeded and delete the data from the queue.
- Default value:
10
-
AdvancedAuthEnabled
- If set, advanced authorization is used for communication with the Engagement APIs listed in Customer Token Authorization.
- Refer to the authorization documentation for details.
Android-specific configuration parameters
The following parameters are specified in the same Configuration
object but only applied on Android.
-
AutomaticPushNotifications
- By default, the SDK will set up a Firebase service and try to process push notifications sent from the Engagement platform automatically. You can opt out by setting this to
false
. - Default value:
true
- By default, the SDK will set up a Firebase service and try to process push notifications sent from the Engagement platform automatically. You can opt out by setting this to
-
PushIcon
- Android resource ID of the icon to be used for push notifications.
-
PushAccentColor
- Accent color of push notification icon and buttons.
- This is a color ID, not a resource ID. When using colors from resources, you must get the resource first, and convert it to a uint value, or get the color directly from argb, for example,
System.Drawing.Color.FromArgb(0, 0, 255).ToInt();
for blue.
-
PushChannelName
- Name of the channel to be created for the push notifications.
- Only available for API level 26+. Refer to https://developer.android.com/training/notify-user/channels for details.
-
PushChannelDescription
- Description of the channel to be created for the push notifications.
- Only available for API level 26+. Refer to https://developer.android.com/training/notify-user/channels for details.
-
PushChannelId
- Channel ID for push notifications.
- Only available for API level 26+. Refer to https://developer.android.com/training/notify-user/channels for details.
-
PushNotificationImportance
- Notification importance for the notification channel.
- Only available for API level 26+. Refer to https://developer.android.com/training/notify-user/channels for details.
iOS-specific configuration parameters
The following parameters are specified in the same Configuration
object but only applied on iOS.
-
RequirePushAuthorization
- The SDK can check push notification authorization status (Apple documentation) and only track the push token if the user is authorized to receive push notifications.
- When disabled, the SDK will automatically register for push notifications on app start and track the token to Engagement so your app can receive silent push notifications.
- When enabled, the SDK will automatically register for push notifications if the app is authorized to show push notifications to the user.
- Unless you're only using silent notifications, keep the default value
true
.
-
AppGroup
- App group used for communication between the main app and notification extensions. This is a required field for rich push notification setup.
Updated 2 months ago