Tracking consent
Manage tracking consent using the MAUI SDK.
Depending on local data access regulations, access to data on a user's device may require explicit consent. To follow such requirements, Engagement allows you to enable the standalone "tracking consent" feature. This feature activates the tracking consent option for in-app messages, in-app content blocks, and mobile push notifications.
Refer to Configuration of the tracking consent categories in the Engagement Consent Management documentation for more information about the tracking consent feature.
How the SDK manages tracking consent
If the tracking consent feature is enabled, the Engagement platform sents a has_tracking_consent
attribute along with push notifications, in-app messages, and in-app content blocks data. The SDK tracks events according to the boolean value of this attribute.
If the tracking consent feature is disabled, the has_tracking_consent
attribute is not included in push notifications, in-app messages, and in-app content blocks data. In this case, the SDK considers has_tracking_consent
to be true
and tracks event accordingly.
In case of clicked events, it is possible to override the value of has_tracking_consent
and force tracking by including the query parameter xnpe_force_track
with the value true
in the action URL.
How the SDK tracks events depending on tracking consent
Push notification delivered
The SDK tracks push notification delivery by calling BloomreachSDK.TrackDeliveredPush
or BloomreachSDK.HandleRemoteMessage
. These methods track a delivered event only if one of the following is true:
- The tracking consent feature is disabled.
- The tracking consent feature is enabled and
has_tracking_consent
istrue
.
If you are invoking the BloomreachSDK.TrackDeliveredPush
method manually and want to ignore tracking consent, you may use BloomreachSDK.TrackDeliveredPushWithoutTrackingConsent
instead. This method will track the event regardless of tracking consent.
Push notification clicked
The SDK tracks push notification clicks by calling BloomreachSDK.TrackClickedPush
. This method tracks a clicked event only if one of the following is true:
- The tracking consent feature is disabled.
- The tracking consent feature is enabled and
has_tracking_consent
istrue
. - The action URL contains the query parameter
xnpe_force_track
with the valuetrue
(overridinghas_tracking_consent
).
An event that is tracked because
xnpe_force_track
(forced tracking) is enabled will contain an additional propertytracking_forced
with valuetrue
.
If you are invoking the BloomreachSDK.TrackClickedPush
method manually and you want to ignore tracking consent, you may use BloomreachSDK.TrackClickedPushWithoutTrackingConsent
instead.
These methods will track the event regardless of tracking consent.
In-app message clicked
The SDK tracks in-app message clicks by calling BloomreachSDK.TrackInAppMessageClick
. This method tracks a clicked event only if one of the following is true:
- The tracking consent feature is disabled.
- The tracking consent feature is enabled and
has_tracking_consent
istrue
. - The action URL contains the query parameter
xnpe_force_track
with the valuetrue
(overridinghas_tracking_consent
).
An event that is tracked because
xnpe_force_track
(forced tracking) is enabled will contain an additional propertytracking_forced
with valuetrue
.
If you are invoking the BloomreachSDK.TrackInAppMessageClick
method manually and want to ignore tracking consent, you may use BloomreachSDK.TrackInAppMessageClickWithoutTrackingConsent
instead. This method will track the event regardless of tracking consent.
In-app message closed
The SDK tracks in-app message closed events by calling BloomreachSDK.TrackInAppMessageClose
. This method tracks a closed event only if one of the following is true:
- The tracking consent feature is disabled.
- The tracking consent feature is enabled and
has_tracking_consent
istrue
.
If you are invoking the BloomreachSDK.TrackInAppMessageClose
method manually and you want to ignore tracking consent, you may use BloomreachSDK.TrackInAppMessageCloseWithoutTrackingConsent
instead. This method will track the event regardless of tracking consent.
App Inbox message opened
The SDK tracks app inbox message opening by calling BloomreachSDK.TrackAppInboxOpened
. This method tracks an app inbox message open event only if one of the following is true:
- The tracking consent feature is disabled.
- The tracking consent feature is enabled and
has_tracking_consent
istrue
. - The App Inbox is loaded and the given MessageItem is listed in the App Inbox.
If you are invoking the BloomreachSDK.TrackAppInboxOpened
method manually and you want to ignore tracking consent, you may use BloomreachSDK.TrackAppInboxOpenedWithoutTrackingConsent
instead. This method will track the event regardless of tracking consent.
App Inbox action clicked
The SDK tracks app inbox action clicks by calling BloomreachSDK.TrackAppInboxClick
. This method tracks a clicked event only if one of the following is true:
- The tracking consent feature is disabled.
- The tracking consent feature is enabled and
has_tracking_consent
istrue
. - The action URL contains the query parameter
xnpe_force_track
with the valuetrue
(overridinghas_tracking_consent
).
An event that is tracked because
xnpe_force_track
(forced tracking) is enabled will contain an additional propertytracking_forced
with valuetrue
.
If you are invoking the BloomreachSDK.TrackAppInboxClick
method manually and you want to ignore tracking consent, you may use BloomreachSDK.TrackAppInboxClickWithoutTrackingConsent
instead. This method will track the event regardless of tracking consent.
Updated 2 months ago