GDPR Compliance

  1. Overview
  2. Consent Management Provider
  3. Forwarding user's consent to Smart Instream SDK
    1. Code example

Overview

Starting 25th May 2018, the new General Data Protection Regulation law will apply in Europe.

Every publisher based in Europe or offering service to users in Europe is required to comply with this regulation and collect the user's consent to use his personal data for various purposes such as analytics or advertisements.

Smart provides some tools to help you in this process, based on the recommendations of the Interactive Advertising Bureau.


You might want to read more about how GDPR applies for advertising on advertisingconsent.eu

Consent Management Provider

The first step to apply GDPR is to collect the user's consent about the use of his personal data.

This can be done through various tools such as Consent Management Provider (CMP).

A CMP is a technology interface (usually an SDK for Apps environment) permitting apps developers to provide transparency and obtain consent where necessary for themselves and/or on behalf of their chosen third parties and to transmit informations about which vendors and which purposes a user has consented to with vendors.

Smart provides an open source CMP based on IAB's Transparency and Consent Framework.

We recommend you to integrate this library into your apps. You can also integrate another CMP of your choice as long as it is compliant with IAB's framework and specifications since Smart Display SDK will retrieve consent based on these specifications.

If you integrated a CMP compliant with IAB specifications, you have nothing to do.

The CMP will store a string representing the user's consent in the SharedPreferences and Smart Instream SDK will just retrieve this string and forward it to Smart's backend (and third party partners) when performing ad calls.

If you did not integrate a CMP compliant with the IAB specifications, you will have to store the consent string representation manually in SharedPreferences under the IABConsent_ConsentString key.


Code example

Find below samples for manually setting the consent string on Android:


public void setupUserConsent() {    
    /////////////////////////////////////////
    // SDK - GDPR Compliance
    // As per IAB specifications in Transparency And Consent Framework:
    // https://github.com/InteractiveAdvertisingBureau/GDPR-Transparency-and-Consent-Framework
    // Smart Instream SDK will retrieve the consent string from the SharedPreferences using the official IAB key "IABConsent_ConsentString"
    /////////////////////////////////////////
    // If you are using SmartCMP SDK, this step is not required since SmartCMP already complies with IAB specifications
    // If you are using another CMP that is not validated by the IAB or not using the official key:
    // you will have to manually store the computed consent string into the SharedPreferences for Smart Instream SDK to retrieve it and forward it to its partners.
    /////////////////////////////////////////
	SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getContext());
	Editor editor = prefs.edit();
	editor.putString("IABConsent_ConsentString", "yourCMPComputedConsentStringBase64format");
	editor.commit();
}