Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Les Kits de développement logiciel (SDK) mobiles de Xandr incluent la prise en charge des clients pour la plateforme globale de confidentialité (GPP), le Règlement général sur la protection des données (RGPD) et la Loi sur la protection des consommateurs de Californie (CCPA) et la loi sur les services numériques (DSA).
La Plateforme mondiale de confidentialité (GPP) permet aux annonceurs, aux éditeurs et aux fournisseurs de technologies de s’adapter aux exigences réglementaires sur les marchés. Le RGPD fournit des réglementations relatives au traitement, au déplacement et à la protection des données personnelles au sein de l’Union européenne. Le CCPA crée de nouveaux droits de consommateur concernant l’accès, la suppression et le partage des renseignements personnels recueillis par les organisations. L’ADS est une mesure législative clé de l’Union européenne visant à renforcer la transparence de la publicité numérique, avec un objectif fondamental de promouvoir la transparence, la responsabilité et la protection des utilisateurs dans services en ligne.
Avertissement
Cette ressource ne doit pas être interprétée comme un conseil juridique et Xandr ne donne aucune garantie quant au respect d’une loi ou d’une réglementation. Veuillez noter que étant donné que chaque entreprise et sa collecte, utilisation et stockage de données personnelles sont différents, vous devez également demander des conseils juridiques indépendants concernant les obligations en vertu des réglementations européennes, y compris le RGPD et la directive ePrivacy existante. Seul un avocat peut vous fournir des conseils juridiques adaptés à votre situation. Rien dans ce guide n’est destiné à vous fournir, ou ne doit être utilisé comme un substitut, des conseils juridiques adaptés à votre entreprise.
Remarque
Les éditeurs sont responsables de la notification, de la transparence et du choix et de la collecte du consentement de leurs utilisateurs conformément aux stratégies de l’infrastructure, soit en utilisant leur propre fournisseur de gestion des consentements, soit en travaillant avec un fournisseur. > - Inscrire votre propre CMP> - Liste des CMP inscrits
Nos politiques de service (pour l’achat, la vente et les fournisseurs de données) incluent des obligations spécifiques à la confidentialité que vous devez connaître.
Tous les Kits de développement logiciel (SDK) des fournisseurs (y compris les Kits de développement logiciel (SDK) de médiation) sont responsables de la recherche des informations de consentement et des fournisseurs approuvés par eux-mêmes ; Xandr ne transmet pas ces informations à ces kits SDK.
Règlement général sur la protection des données (RGPD)
Pour que nos clients répondent à leurs exigences de transparence, de notification et de choix/consentement en vertu du RGPD et de la directive ePrivacy existante, Xandr prend en charge le cadre de transparence & de consentement IAB Europe (le « Framework »).
Il s’agit d’une référence pour les éditeurs d’applications mobiles qui utilisent le Kit de développement logiciel (SDK) mobile de Xandr pour présenter la notification, la transparence et le choix aux utilisateurs finaux situés dans l’EEE et signaler aux fournisseurs approuvés et, si nécessaire, transmettre le consentement à Xandr et aux sources de demande et à leurs fournisseurs via la plateforme Xandr.
Xandr fournit trois API dans le Kit de développement logiciel (SDK) mobile pour que les éditeurs d’applications mobiles utilisent l’infrastructure. Ces API sont disponibles dans mobile SDK version 4.8+ pour Android et 4.7.1+ pour iOS. Ces API vous permettent d’effectuer les opérations suivantes :
- Définir si l’utilisateur se trouve dans l’Espace économique européen (l'« EEE ») et que les réglementations européennes en matière de confidentialité doivent s’appliquer
- Définir la chaîne de consentement IAB Europe (IAB)
- Définir les consentements de l’objectif IAB Europe (IAB)
Ces informations seront conservées par le Kit de développement logiciel (SDK) et ajoutées à chaque appel publicitaire pour l’application de contrôles de plateforme.
Les plateformes de gestion des serveurs de publication/consentement (CMP) sont libres de stocker ces valeurs dans une interface SharedPreferences (telle que définie par Mobile In-App API CMP v2.0 : Transparency & Consent Framework) au lieu de les transmettre via les nouvelles API, et le Kit de développement logiciel (SDK) lit les valeurs comme secours.
/** * Set the consentRequired value in the SDK
*
* @param true if subject to GDPR regulations, false otherwise
*/
ANGDPRSettings.setConsentRequired(context,true);
/**
* Set the consent string in the SDK
*
* @param A valid Base64 encode consent string as per
* https://github.com/InteractiveAdvertisingBureau/GDPR-Transparency-and-Consent-Framework
*/
ANGDPRSettings.setConsentString(context,"BOMyQRvOMyQRvABABBAAABAAAAAAEA");
/**
* Set the purpose consents in the SDK
*
* @param A valid Binary String: The '0' or '1' at position n – where n's indexing begins at 0 – indicates the consent status for purpose ID n+1; false and true respectively. eg. '1' at index 0 is consent true for purpose ID 1
*/
ANGDPRSettings.setPurposeConsents(context,"101010001");
Remarque
Pour garantir une monétisation appropriée et un ciblage approprié, le Kit de développement logiciel (SDK) doit être activé pour envoyer les informations de l’appareil. La définition correcte de l’indicateur consentRequired et purposeConsents permet de s’assurer que les informations appropriées sur l’appareil sont envoyées. Reportez-vous au tableau ci-dessous pour déterminer si les détails de l’appareil seront transmis ou non.
Le tableau ci-dessous décrit les actions effectuées pour les différentes purposeConsents valeurs en combinaison avec des consentRequired valeurs.
| true | false | Indéfini | |
|---|---|---|---|
consentRequired=false |
Le Kit de développement logiciel (SDK) transmet les informations de l’appareil. | Le Kit de développement logiciel (SDK) ne transmet pas les informations de l’appareil. | Le Kit de développement logiciel (SDK) transmet les informations de l’appareil. |
consentRequired=true |
Le Kit de développement logiciel (SDK) transmet les informations de l’appareil. | Le Kit de développement logiciel (SDK) ne transmet pas les informations de l’appareil. | Le Kit de développement logiciel (SDK) ne transmet pas les informations de l’appareil. |
consentRequired=undefined |
Le Kit de développement logiciel (SDK) transmet les informations de l’appareil. | Le Kit de développement logiciel (SDK) ne transmet pas les informations de l’appareil. | Le Kit de développement logiciel (SDK) transmet les informations de l’appareil. |
California Consumer Privacy Act (CCPA)
Xandr fournit trois API qui permettent aux utilisateurs du SDK de définir, de récupérer et d’effacer les contrôles U.S. Privacy User Signal Mechanism. L’IAB Tech Lab a formalisé et adopté la "us_privacy" chaîne comme mécanisme d’encodage des données sur les informations divulguées aux utilisateurs et aux élections des utilisateurs en vertu de diverses lois américaines sur la confidentialité, en commençant par le CCPA.
Ces informations seront conservées par le Kit de développement logiciel (SDK) et ajoutées à chaque appel publicitaire pour l’application de contrôles de plateforme.
Les plateformes de gestion des serveurs de publication/consentement (CMP) sont libres de stocker ces valeurs dans une interface SharedPreferences (telle que définie par le mécanisme de conformité CCPA d’IAB) au lieu de les transmettre via les nouvelles API, et le SDK lit les valeurs comme secours.
/**
* Set the IAB US Privacy String in the SDK
*
* @param privacyString will be set and pass string to Ad Server
*/
ANUSPrivacySettings.setUSPrivacyString(context,"1YNN");
/**
* Get the IAB US Privacy String that will be sent in the request.
*
* @param context
* @return Return IAB US Privacy String set by Publisher
*/
ANUSPrivacySettings.getUSPrivacyString(context);
/**
* Clear the value of IAB US Privacy String that was previously set using setUSPrivacyString
*
* @param context
*/
ANUSPrivacySettings.reset(context);
Plateforme globale de confidentialité (GPP)
Global Privacy Platform est un protocole unique conçu pour simplifier la transmission des signaux de confidentialité, de consentement et de choix des consommateurs des sites web et des applications aux fournisseurs de technologies publicitaires. Ces signaux sont empaquetés dans une charge utile standardisée et facilement communiquée appelée chaîne GPP. Les données GPP pré-analysées ainsi que la chaîne GPP doivent être stockées sous SharedPreferences (Android). Cela permet les opérations suivantes :
- Fournisseurs pour accéder facilement aux données GPP.
- Données GPP à conserver entre les sessions d’application.
- Les données GPP doivent être portables entre les plateformes de gestion des consentements (CMP) afin de permettre à un éditeur d’échanger un SDK CMP contre un autre.
- Fournisseurs au sein d’une application pour éviter la duplication du code, en n’ayant pas besoin d’inclure un décodeur de chaîne GPP tout en activant tous les cas d’usage classiques.
Remarque
Si un éditeur choisit de supprimer un SDK CMP de son application, il est responsable de l’effacement de toutes les valeurs vestigiales IABGPP_* pour les utilisateurs afin que les fournisseurs ne continuent pas à utiliser les données GPP qu’elles contiennent.
Le Kit de développement logiciel (SDK) Xandr lit ensuite les valeurs de SharedPreferences , qui sont ensuite passées à l’appel publicitaire. Voici les chaînes que le SDK interrogera à partir de :
| Nom de la clé | Type de données | Description |
|---|---|---|
IABGPP_HDR_GppString |
string | Chaîne de consentement complète dans sa forme encodée. P. ex "DBACNYA~CPXxRfAPXxRfAAfKABENB-CgAAAAAAAAAAYgAAAAAAAA~1YNN" |
IABGPP_GppSID |
string | Id(s) de section considéré(s) comme étant en vigueur. Plusieurs ID sont séparés par un trait de soulignement, par exemple “2_3” |
Digital Services Act (DSA)
La Loi sur les services numériques (DSA) supervise les intermédiaires et les plateformes en ligne, dont l’objectif principal est de lutter contre les activités illégales et nuisibles sur Internet et d’atténuer la diffusion de la information. L’ADS est une mesure législative clé de l’Union européenne visant à renforcer la transparence de la publicité numérique, avec un objectif fondamental de promouvoir la transparence, la responsabilité et la protection des utilisateurs dans services en ligne.
Définir des valeurs DSA dans le Kit de développement logiciel (SDK)
Le Kit de développement logiciel (SDK) transmet ensuite ces valeurs à l’appel publicitaire
/**
* Set the DSA information requirement.
* 0 = Not required
* 1 = Supported, bid responses with or without DSA object will be accepted
* 2 = Required, bid responses without DSA object will not be accepted
* 3 = Required, bid responses without DSA object will not be accepted, Publisher is an Online Platform
*
* @param dsaRequired The DSA information requirement value to be set.
*/
ANDSASettings.setDSARequired(1);
/**
* Set if the publisher renders the DSA transparency info.
* 0 = Publisher can't render
* 1 = Publisher could render depending on adrender
* 2 = Publisher will render
*
* @param pubRender The value indicating whether the publisher renders DSA transparency info.
*/
ANDSASettings.setPubRender(0);
/**
* Set the transparency list using the provided list of ANDSATransparencyInfo.
*
* @param domain The domain of the entity that applied user parameters.
* @param params The list of user parameters used for the platform or sell-side.
*/
ArrayList<ANDSATransparencyInfo> transparencyList = new ArrayList<>();
transparencyList.add(new ANDSATransparencyInfo("example.com", new ArrayList<>(Arrays.asList(1, 2, 3))));
transparencyList.add(new ANDSATransparencyInfo("example.net", new ArrayList<>(Arrays.asList(4, 5, 6))));
ANDSASettings.setTransparencyList(transparencyList);
Récupérer les valeurs DSA définies dans le KIT de développement logiciel (SDK)
ANDSASettings.getDSARequired()
ANDSASettings.getPubRender()
ANDSASettings.getTransparencyList()
Récupérer les valeurs de réponse DSA
Exemple de code Java
// Request Banner Ad
bav = new BannerAdView(this);
bav.setPlacementID("1"); // Placement ID
bav.setAdSize(300, 250); // Size
bav.setAdListener(this) // AdListener
// On Ad Loaded
@Override
public void onAdLoaded(AdView bav) {
log("Banner Ad Loaded");
ANDSAResponseInfo dsaResponseInfo = bav.getAdResponseInfo().getDSAResponseInfo();
/**
* Retrieve on whose behalf the ad is displayed.
*/
String behalf = dsaResponseInfo.getBehalf();
/**
* Retrieve who paid for the ad.
*/
String paid = dsaResponseInfo.getPaid();
/**
* Retrieve the transparency user parameters info
*/
ArrayList<ANDSATransparencyInfo> transparencyList = dsaResponseInfo.getTransparencyList();
for(int i = 0; i <= transparencyList.size(); i++) {
ANDSATransparencyInfo tranparencyInfo = transparencyList.get(i);
String domain = tranparencyInfo.getDomain();
ArrayList<Integer> params = tranparencyInfo.getDSAParams();
}
/**
* Retrieve indicating if the buyer/advertiser will render DSA transparency info.
* 0 = buyer/advertiser will not render
* 1 = buyer/advertiser will render
*/
int adRender = dsaResponseInfo.getAdRender();
}
Exemple de code Kotlin
// Request Banner Ad
banner = BannerAdView(this)
banner.placementID = "1" // PlacementID
banner.setAdSize(300, 250) // Size
banner.adListener = this // AdListener
banner.loadAd()
// On Ad Loaded
override fun onAdLoaded(ad: AdView?) {
log("Banner Ad Loaded")
val dsaResponseInfo: ANDSAResponseInfo = bav.adResponseInfo.dsaResponseInfo
/**
* Retrieve on whose behalf the ad is displayed.
*/
val behalf: String? = dsaResponseInfo.behalf
/**
* Retrieve who paid for the ad.
*/
val paid: String? = dsaResponseInfo.paid
/**
* Retrieve the transparency user parameters info
*/
val transparencyList: ArrayList<ANDSATransparencyInfo> = dsaResponseInfo.transparencyList
for (i in 0 until transparencyList.size) {
val transparencyInfo: ANDSATransparencyInfo = transparencyList[i]
val domain: String = transparencyInfo.domain
val params: ArrayList<Int> = transparencyInfo.getDSAParams()
}
}
/**
* Retrieve indicating if the buyer/advertiser will render DSA transparency info.
* 0 = buyer/advertiser will not render
* 1 = buyer/advertiser will render
*/
val adRender: Int = dsaResponseInfo.adRender
Remarque
ANDSAResponseInfo peut être récupéré à l’aide de video Ad instance, Interstitial Ad View instance et Native Ad Response également en dehors de l’affichage bannière publicitaire.
Java
//Video Ad
ANDSAResponseInfo dsaResponseInfo = videoAd.getAdResponseInfo().getDSAResponseInfo()
//Native Ad
ANDSAResponseInfo dsaResponseInfo = nativeAdResponse.getAdResponseInfo().getDSAResponseInfo()
//Insterstitial Ad View
ANDSAResponseInfo dsaResponseInfo = interstitial.getAdResponseInfo().getDSAResponseInfo()
Kotlin
//Video Ad
val dsaResponseInfo = videoAd.adResponseInfo.dsaResponseInfo
//Native Ad
val dsaResponseInfo = nativeAdResponse.adResponseInfo.dsaResponseInfo
//Insterstitial Ad View
val dsaResponseInfo = interstitial.adResponseInfo.dsaResponseInfo