Documentation

Support

Analytics

Analytics

Migrate to Unity 6.2 with Analytics SDK 6.1.0

Update your consent management code to use the Developer Data framework in Unity 6.2 with Analytics Software Development Kit 6.1.0.
Read time 1 minuteLast updated 19 hours ago

Follow this guide if you're upgrading to Unity 6.2 with Analytics SDK 6.1.0. Unity 6.2 introduces the Developer Data framework to manage player consent. This framework uses the Unity Engine's
EndUserConsent
API, replacing the SDK's
StartDataCollection()
and
StopDataCollection()
methods. This guide details these changes and how to adapt your project.
You no longer need to manually activate the Analytics SDK after calling
UnityServices.InitializeAsync()
. To use the new Developer Data framework, you must remove all usages of the
StartDataCollection()
and
StopDataCollection()
methods.
Instead, use the
EndUserConsent.SetUserConsent(...)
method to grant consent for
AnalyticsIntent
. You only need to do this once. The Developer Data framework stores this consent status locally, and the Analytics SDK activates automatically based on this stored value.
The following code demonstrates how to record player consent for data collection:
// ... ask for consent...ConsentState consentState = EndUserConsent.GetConsentState();if (userGaveConsent){ consentState.AnalyticsIntent = ConsentStatus.Granted;}else{ consentState.AnalyticsIntent = ConsentStatus.Denied;}EndUserConsent.SetConsentState(consentState);
To learn more about managing consent with the
EndUserConsent
API, refer to the Developer Data framework documentation.
If
UnityServices.InitializeAsync()
has already been called, setting
AnalyticsIntent
to
Granted
immediately starts data collection. If you set
AnalyticsIntent
to
Granted
first, data collection starts during
UnityServices.InitializeAsync()
instead.
If the
AnalyticsIntent
status is set to any value other than
Granted
, at any time, data collection stops immediately or does not start during initialization.

Request data deletion

The Analytics SDK still controls data deletion requests, using the existing
RequestDataDeletion()
method. However, the SDK no longer automatically stops collecting data when doing so. In order to make a data deletion request, you must deny consent using the
EndUserConsent
API first.
ConsentState consentState = EndUserConsent.GetConsentState();consentState.AnalyticsIntent = ConsentStatus.Denied;EndUserConsent.SetConsentState(consentState);AnalyticsService.Instance.RequestDataDeletion();