Home


General Data Protection Regulation (GDPR)

Enhance offers all of the functionality that you need to be fully compliant with the GDPR. Read more about GDPR compliance here.

As of May 25th 2018, the new GDPR law will be fully enforced, which means that for your client in the EU you must ensure that your apps are compliant.

Service providers have been updating their SDKs to offer methods that allow you to opt in and out of data collection. Some service providers require users to provide their own "opt-in" dialog, which must present a clear choice to the end-user and allow them to either opt-in to having their data collected and processed, or opt-out entirely.

The GDPR does not permit automatically opting users in, even if an opt-out method is provided; it must be an explicit opt-in.

Enhance exposes some functionality to make it possible to use these GDPR compliancy features of the SDKs you include when Enhancing your app. Ultimately, the responsibility lies with you to ensure that you are meeting the appropriate regulation.

For the majority of SDKs that support GDPR, you must present an appropriate choice to the user, clearly outlining what the user is agreeing to and giving them a clear choice to opt in or out. Once you have done this, you can use the methods provided in the Drag and Drop library, listed below, to convey the user's choice through to the SDKs you have integrated.

public void OnGDPROptIn() {
    Enhance.ServiceTermsOptIn();
}

public void OnGDPROptOut() {
    Enhance.ServiceTermsOptOut();
}

Methods

Enhance.RequiresDataConsentOptIn

void Enhance.RequiresDataConsentOptIn(
    Action onRequired,
    Action onNotRequired
)

Check if the user is within a country where GDPR regulations are enforced, and whether you have any services that require opt-in which are not already opted into.

Parameters:

Action  onRequired - Called when any kind of opt-in is required by services that are included in your app.

Action  onNotRequired - Called when opt-in is not required. All of your SDKs will be operating as normal, or the user has explicitly opted out of data collection/processing.

Enhance.ShowServiceOptInDialogs

void Enhance.ShowServiceOptInDialogs()

This method will instruct any services which contain built-in opt-in dialogs to display them. The Enhance process will inform you about which services allow this type of opt-in. Using SDKs with built-in dialogs is the easiest way to ask your users whether they'd like to opt-in.

Enhance.ShowServiceOptInDialogs

void Enhance.ShowServiceOptInDialogs(
    Action onDialogComplete
)

This method will instruct any services which contain built-in opt-in dialogs to display them. The Enhance process will inform you about which services allow this type of opt-in. Using SDKs with built-in dialogs is the easiest way to ask your users whether they'd like to opt-in.

Parameters:

Action  onDialogComplete - Called after all opt-in dialogs are closed.

Enhance.ShowServiceOptInDialogs

void Enhance.ShowServiceOptInDialogs(
    List<string> requestedSdks
)

This method will instruct any services which contain built-in opt-in dialogs to display them. The Enhance process will inform you about which services allow this type of opt-in. Using SDKs with built-in dialogs is the easiest way to ask your users whether they'd like to opt-in.

Parameters:

List<string>  requestedSdks - A string array of SDK IDs for which you want to call this method. The Enhance process will instruct you about the identifiers you can use.

Enhance.ShowServiceOptInDialogs

void Enhance.ShowServiceOptInDialogs(
    List<string> requestedSdks,
    Action onDialogComplete
)

This method will instruct any services which contain built-in opt-in dialogs to display them. The Enhance process will inform you about which services allow this type of opt-in. Using SDKs with built-in dialogs is the easiest way to ask your users whether they'd like to opt-in.

Parameters:

List<string>  requestedSdks - A string array of SDK IDs for which you want to call this method. The Enhance process will instruct you about the identifiers you can use.

Action  onDialogComplete - Called after all opt-in dialogs are closed.

Enhance.ServiceTermsOptIn

void Enhance.ServiceTermsOptIn()

Calling this method will opt the current user in to using the services that you selected during the Enhance process. This should be used for any services which don't provide their own opt-in dialogs. You should only call this method after showing a clear consent dialog which contains all of the details regarding consent required by the affected SDKs.

Enhance.ServiceTermsOptIn

void Enhance.ServiceTermsOptIn(
    List<string> requestedSdks
)

Calling this method will opt the current user in to using the services that you selected during the Enhance process. This should be used for any services which don't provide their own opt-in dialogs. You should only call this method after showing a clear consent dialog which contains all of the details regarding consent required by the affected SDKs.

Parameters:

List<string>  requestedSdks - A string array of SDK IDs for which you want to call this method. The Enhance process will instruct you about the identifiers you can use.

Enhance.ServiceTermsOptOut

void Enhance.ServiceTermsOptOut()

This explicit opt-out will instruct any GDPR compliant services that you're using that the user has specifically declined an opt-in to their data collection and processing. It can also be used to revert a previous opt-in decision by the user - if the user chooses to revoke their consent.