ConsentManager SDK GDPR / CCPA pour Android
La solution ConsentManager Le SDK pour les applications Android implémente et fournit des fonctionnalités pour informer l'utilisateur sur la protection des données et demander et recueillir le consentement de l'utilisateur. Il permet aux développeurs d'applications d'intégrer facilement le ConsentManager service dans leur application.
Normes prises en charge
La solution ConsentManager Le SDK GDPR / CCPA pour Android prend en charge les normes industrielles suivantes:
- TCF de l'IAB v1
- TCF de l'IAB v2
- IAB USPrivacy v1
- ConsentManager fournisseurs / objectifs personnalisés
- Mode de consentement supplémentaire Google (chaîne Google AC)
Comment ça marche
- Intégrez le SDK dans l'application et configurez les paramètres du SDK
- Une fois le SDK intégré dans une application, le SDK fournira des fonctions au développeur de l'application afin de récupérer les données de consentement
- Dès que l'application démarre, le SDK récupère automatiquement les informations du ConsentManager serveurs afin de préparer le SDK à son utilisation.
- Il est recommandé qu'au démarrage de l'application, l'application crée une instance de classe
CMPConsentTool
. Une fois le fichier créé, le SDK affichera automatiquement l'écran de consentement si nécessaire. - Lorsque l'application souhaite traiter des données personnelles, elle doit «demander» au SDK si le consentement a été donné pour l'objectif et le fournisseur spécifiques.
L’installation
Dépôt sur Bitbucket: https://bitbucket.org/consentmanager/android-consentmanager/src/master/
gradle
Étape 1. Ajoutez le référentiel jitpack à votre build.gradle racine à la fin des référentiels:
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
Étape 2. Ajoutez la dépendance à vos applications build.gradle. (Pour toujours obtenir la dernière version, utilisez le symbole + pour obtenir les dernières mises à jour. Vous pouvez par exemple toujours obtenir les dernières versions pour les mises à jour mineures via 1.x.+)
dependencies {
implementation 'org.bitbucket.consentmanager:android-consentmanager:1.5.+'
}
Maven
Étape 1. Ajoutez le référentiel jitpack à votre build.gradle à la fin des référentiels:
<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
Étape 2. Ajoutez la dépendance à vos applications build.gradle. (Pour toujours obtenir la dernière version dans maven, vous pouvez utiliser différentes méthodes pour décliner la plage de versions. Vous pouvez les rechercher ici )
<dependency>
<groupId>org.bitbucket.consentmanager</groupId>
<artifactId>android-consentmanager</artifactId>
<version>1.5.7</version>
</dependency>
Utilisation de la bibliothèque
Permissions
Ce SDK nécessite les autorisations suivantes, veuillez vous assurer de les ajouter à votre AndroidManifest.xml:
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
Lancer l'outil ConsentTool
Avec l'app-start (généralement votre fonction viewDidAppear), vous devez créer une instance de la classe CMPConsentTool. Cela récupérera automatiquement les données nécessaires de notre serveur et déterminera si l'écran de consentement doit être affiché ou non. Si tel est le cas, le SDK affichera automatiquement l'écran de consentement à ce stade, collectera les données et fournira les données à l'application. L'instance peut ensuite être utilisée pour obtenir les détails du consentement du SDK afin de l'utiliser dans l'application.
Pour lancer le ConsentTool, accédez à votre classe ciblée et créez une instance de CMPConsentTool comme indiqué ci-dessous:
//...
import net.consentmanager.sdk.CMPConsentTool;
//...
public class MainActivity extends AppCompatActivity {
private CMPConsentTool consentTool;
//...
@Override
protected void onCreate(Bundle savedInstanceState) {
//..
consentTool = CMPConsentTool.createInstance(this, 123456, "consentmanager.mgr.consensu.org", "MyFavouriteApp", "");
}
//...
}
Pour créer l'instance de CMPConsentTool, vous devez configurer l'instance. Vous devrez fournir l'ID CMP, le domaine du serveur, un nom d'application et une langue. Le CMP-ID et le domaine du serveur se trouvent dans votre ConsentManager compte sous Menu> Obtenir le code. Le nom de l'application peut être utilisé pour distinguer différentes applications dans le ConsentManager rapports. Pour la langue, vous pouvez utiliser une chaîne vide ("") pour la détection automatique ou un code de langue à 2 lettres ("EN", "DE", "FR" et ainsi de suite).
Les valeurs de configuration peuvent être insérées de différentes manières:
a) Configuration du SDK via CMPConfig
Ajoutez les lignes suivantes à votre code:
val config = CMPConfig.apply {
serverDomain = CMP_DOMAIN
appName = CMP_APP_NAME
language = LANG
id = APP_ID
}
val consentTool = CMPConsentTool.createInstance(this, config);
b) Configuration du SDK via createInstance()
Ajoutez la ligne suivante à votre code:
consentTool = CMPConsentTool.createInstance(this, 1234567, "consentmanager.mgr.consensu.org", "MyFavouriteApp", "EN");
Utilisation du SDK
Vérifier le consentement
Afin de vérifier si un fournisseur ou un objectif a son consentement, vous pouvez utiliser les deux méthodes:
if(consentTool.hasPurposeConsent(this,"52",false))
{
if(consentTool.hasVendorConsent(this,"s26", false))
{
//do something with data
}
}
Les deux méthodes hasPurposeConsent
et hasVendorConsent
nécessitent deux paramètres:
- id - Chaîne du fournisseur ou de l'ID de fonction. Veuillez noter que les identifiants de fournisseur peuvent avoir différents formats ("123", "s123" et "c123"), veuillez vérifier avec Menu> Fournisseurs et Menu> Objectifs dans votre ConsentManager compte.
- isIABVendor / isIABPurpose - Si le fournisseur ou l'objet est un fournisseur / objectif qui suit la norme IAB TCF, vous devrez définir un vrai, sinon un faux.
N'oubliez pas: tous les fournisseurs qui n'appartiennent pas à l'IAB ont des ID commençant par un "s" ou "c" (par exemple, "s123"); les fournisseurs qui appartiennent à l'IAB ont des ID ne commençant pas par un «s» ou «c».
Réouverture de l'écran de consentement
Afin de permettre à l'utilisateur de modifier les choix, vous pouvez simplement appeler openCmpConsentToolView()
:
consentTool.openCmpConsentToolView(this);
Transmission d'informations sur le consentement à d'autres sources
Dans certains cas, une application native peut contenir des vues Web afin d'afficher certaines choses comme du contenu publicitaire ou publicitaire. Afin de transmettre les informations de consentement du SDK à la vue Web, veuillez utiliser la fonction:
String consentData = CMPConsentTool.exportCMPData(this);
Cela exportera les informations de consentement et toutes les autres données nécessaires au CMP. Vous pouvez ensuite transmettre ces informations au CMP qui se trouve dans votre vue Web en l'ajoutant à l'URL appelée dans la vue Web:
myWebView.loadURL("https://mywebsite.com/....#cmpimport=" + consentData);
Écouteurs d'événements personnalisés
Pour ajouter une logique de processus supplémentaire, vous pouvez utiliser des écouteurs d'événement. Les écouteurs d'événement suivants sont disponibles :
Nom |
Se produit
|
OnOpenCallback |
Écouteur d'événement à l'ouverture du CMP |
OnCMPCloseCallback |
Écouteur d'événement lorsque CMP est fermé |
SurCMPNotOpenedCallback |
Écouteur d'événement lorsque CMP n'a pas besoin d'être ouvert |
OnErrorCallback |
Écouteur d'événement lorsqu'il y a une erreur dans le processus de gestion des consentements. |
Autorisation d'importation/exportation
Pour importer ou exporter le consentement, vous pouvez utiliser la fonction exportCMPData(Contexte contextuel) et importCMPData (contexte contextuel, chaîne cmpData). Vérifiez l'exemple ci-dessous :
// Importing consent data if you like
CMPConsentTool.importCMPData(this, "${your consentString}");
// Instantiate CMPConsentTool()
consentTool = CMPConsentTool.createInstance(...)
// ... Your code here ...
// Exporting Consent data
String consentString = CMPConsentTool.exportCMPData(this);
La chaîne de consentement que vous devez transmettre doit être encodée en base64.
Diagramme de séquence du SDK CMP
Présentation de l'API :
hasConsent() : booléen
Description: Vérifie si l'utilisateur a déjà donné son consentement.
Valeur de retour: Renvoie true si l'utilisateur a donné son consentement, false sinon.
getAllPurposes(context: Context): Chaîne
Description: renvoie tous les objectifs sous forme de chaîne.
Paramètres:
- context (type : Context) : contexte dans lequel récupérer les finalités.
Retour: Une chaîne contenant tous les objectifs.
getAllPurposeList(context: Context): Liste
Description: renvoie tous les objectifs sous la forme d'une liste de chaînes.
Paramètres:
- context (type : Context) : contexte dans lequel récupérer les finalités.
Retour: une liste de chaînes, où chaque chaîne représente un objectif.
getAgreedPurposes(context: Context): Chaîne
Description: renvoie les objectifs que l'utilisateur a acceptés sous forme de chaîne.
Paramètres:
- context (type : Context) : contexte dans lequel récupérer les finalités convenues.
Retour: Une chaîne contenant les objectifs que l'utilisateur a acceptés.
getAgreedPurposeList(context: Context): Liste
Description: renvoie une liste d'objectifs que l'utilisateur a acceptés.
Paramètres:
- context (type : Context) : contexte dans lequel récupérer la liste des objectifs convenus.
Retour: une liste de valeurs de chaîne représentant les objectifs que l'utilisateur a acceptés.
getDisabledPurposes(context: Context): Liste
Description: renvoie une liste des finalités actuellement désactivées.
Paramètres:
- context (type : Context) : contexte dans lequel récupérer la liste des objectifs désactivés.
Retour: une liste de valeurs de chaîne représentant les objectifs actuellement désactivés.
getAllVendors(context: Context): Chaîne
Description: renvoie une chaîne contenant une liste de tous les fournisseurs disponibles.
Paramètres:
- context (type : Context) : contexte dans lequel récupérer la liste de tous les fournisseurs.
Retour: une chaîne contenant une liste de tous les fournisseurs disponibles.
getAllVendorsList(context: Context): Liste
Description : Renvoie une liste de tous les fournisseurs disponibles.
Paramètres:
- context (type : Context) : contexte dans lequel récupérer la liste de tous les fournisseurs.
Retour: une liste de valeurs de chaîne représentant tous les fournisseurs disponibles.
getAgreedVendors(context: Context): Chaîne
Description: renvoie une chaîne contenant une liste de fournisseurs que l'utilisateur a acceptés.
Paramètres:
- context (type : Context) : contexte dans lequel récupérer la liste des fournisseurs convenus.
Retour: une chaîne contenant une liste de fournisseurs que l'utilisateur a acceptés.
getAgreedVendorList(context: Context): Liste
Description: renvoie une liste de fournisseurs que l'utilisateur a acceptés.
Paramètres:
- context (type : Context) : contexte dans lequel récupérer la liste des fournisseurs convenus.
Retour: une liste de valeurs de chaîne représentant les fournisseurs que l'utilisateur a acceptés.
getDisabledVendors(context: Context): Liste
Description: renvoie une liste des fournisseurs actuellement désactivés.
Paramètres:
- context (type : Context) : contexte dans lequel récupérer la liste des fournisseurs désactivés.
Retour: une liste de valeurs de chaîne représentant les fournisseurs actuellement désactivés.
enableVendorList(context : Contexte, fournisseurs : Liste )
Description: active la liste de fournisseurs donnée.
Paramètres:
- context (type : Context) : contexte dans lequel activer les fournisseurs.
- fournisseurs (type : liste ) : une liste de valeurs de chaîne représentant les fournisseurs à activer.
Retour: Aucun.
disableVendorList(context : Contexte, fournisseurs : Liste )
Description: désactive la liste de fournisseurs donnée.
Paramètres:
- context (type : Context) : contexte dans lequel désactiver les fournisseurs.
- fournisseurs (type : liste ) : une liste de valeurs de chaîne représentant les fournisseurs à désactiver.
Retour: Aucun.
rejeter tout(contexte : Contexte, onConsentReceivedCallback : OnConsentReceivedCallback)
Description : Rejette tout consentement à la candidature.
Paramètres:
- contexte (type : Context) : Le contexte dans lequel le consentement est rejeté.
- onConsentReceivedCallback (type : OnConsentReceivedCallback) : fonction de rappel exécutée après le rejet du consentement.
Retour Valeur : Aucune
acceptAll(context : Contexte, onConsentReceivedCallback : OnConsentReceivedCallback)
Description : Accepte tout consentement pour l'application.
Paramètres:
- contexte (type : Context) : Le contexte dans lequel le consentement est accepté.
- onConsentReceivedCallback (type : OnConsentReceivedCallback) : la fonction de rappel qui est exécutée après l'acceptation du consentement.
Retour Valeur : Aucune
getUSPrivacyString(context : Contexte) : chaîne
Description : Renvoie la chaîne de confidentialité américaine.
Paramètres:
- context (type : Context) : contexte dans lequel la chaîne de confidentialité américaine est renvoyée.
Retour Valeur:
- Chaîne représentant la chaîne de confidentialité américaine.
hasVendorConsent(context: Context, id: String, checkConsent: Boolean = true): Boolean
Description : Vérifie si l'utilisateur a donné son consentement à un fournisseur spécifique.
Paramètres:
- context (type : Context) : le contexte dans lequel le consentement du fournisseur est vérifié.
- id (type : chaîne) : ID du fournisseur.
- checkConsent (type : booléen, facultatif) : spécifie si le consentement doit être vérifié. La valeur par défaut est true.
Retour Valeur:
- true si l'utilisateur a donné son accord au vendeur, false sinon.
hasPurposeConsent(context: Context, id: String, isIABPurpose: Boolean, checkConsent: Boolean = true): Boolean
Description : Vérifie si l'utilisateur a donné son consentement à un objectif spécifique.
Paramètres:
- contexte (type : Contexte) : le contexte dans lequel le consentement à la finalité est vérifié.
- id (type : chaîne) : ID de l'objectif.
- isIABPurpose (type : booléen) : spécifie si l'objectif est un objectif IAB.
- checkConsent (type : booléen, facultatif) : spécifie si le consentement doit être vérifié. La valeur par défaut est true.
Retour Valeur:
- true si l'utilisateur a donné son consentement à la finalité, false sinon.
getGoogleACString(context: Context): Chaîne
Description : Renvoie l'identifiant publicitaire Google.
Paramètres:
- context (type : Context) : contexte dans lequel l'identifiant publicitaire Google est renvoyé.
Retour Valeur:
- Chaîne représentant l'identifiant publicitaire Google.
getLastConsentString(context: Context): Chaîne
Description : Renvoie la dernière chaîne de consentement.
Paramètres:
- context (type : Context) : contexte dans lequel la dernière chaîne de consentement est renvoyée.
Retour Valeur:
- Une chaîne représentant la dernière chaîne de consentement.
exportConsentString() : chaîne
Description : Exporte la chaîne de consentement.
Paramètres: Aucun
Retour Valeur:
- Une chaîne représentant la chaîne de consentement.
getCalledLast(context: Context): Date ?
Description : Renvoie la date à laquelle le consentement a été appelé pour la dernière fois.
Paramètres:
- context (type : Context) : contexte dans lequel la date du dernier appel est renvoyée.
Retour Valeur:
- Une Date représentant la date du dernier appel ou nulle si aucune date n'a été trouvée.
appeléCeJour(contexte : Contexte) : booléen
Description : Vérifie si le consentement a été appelé le jour même.
Paramètres:
- context (type : Context) : le contexte dans lequel la vérification est exécutée.
Retour Valeur:
- vrai si le consentement a été appelé le jour même, faux sinon.
Préférences partagées
Le SDK définira les valeurs de préférences partagées pour IAB TCF v1, IAB TCF v2, IAB USPrivacy et Google AC String. Ces valeurs peuvent être lues à l'aide du code suivant:
Context mContext = getApplicationContext();
SharedPreferences mPreferences = PreferenceManager.getDefaultSharedPreferences(mContext);
SharedPreferences.OnSharedPreferenceChangeListener mListener;
mListener = new SharedPreferences.OnSharedPreferenceChangeListener() {
public void onSharedPreferenceChanged(SharedPreferences preferences, String key) {
if (key.equals([Specific Consent Key])) {
// Update Consent settings
}
}
};
mPreferences.registerOnSharedPreferenceChangeListener(mListener);
Les clés suivantes sont définies:
TCF de l'IAB v1 | |
IABConsent_CMPPresent |
Boolean : Défini sur true si un CMP implémentant cette spécification est présent dans l'application. Idéalement défini par l'éditeur dès que possible, mais peut également être défini par le CMP en variante. |
IABConsent_SubjectToGDPR |
String 1 - (soumis au RGPD), 0 - (non soumis au RGPD), Nil - indéterminé (par défaut avant l'initialisation). S'aligne sur l'avis IAB OpenRTB GDPR. Décidé d'être String, pour avoir le statut non initialisé. |
IABConsent_ConsentString |
String : Chaîne de consentement |
IABConsent_ParsedPurposeConsents |
String (de «0» et «1») où le caractère en position N indique le statut de consentement à l'ID d'objet N tel que défini dans la liste globale des fournisseurs. Chaîne de consentement donnée pour permettre une vérification simple. Le premier caractère à partir de la gauche étant le but 1, ... |
IABConsent_ParsedVendorConsents |
String (de «0» et «1») où le caractère en position N indique le statut de consentement à l'ID de fournisseur N tel que défini dans la liste globale des fournisseurs. Chaîne de consentement donnée pour permettre une vérification simple. Le premier caractère à gauche étant le vendeur 1, ... |
TCF de l'IAB v2 | |
IABTCF_CmpSdkID |
Number : ID entier non signé du SDK CMP |
IABTCF_CmpSdkVersion |
Number : Numéro de version entier non signé du SDK CMP |
IABTCF_PolicyVersion |
Number : L'entier non signé représentant la version du TCF à laquelle ces consentements adhèrent. |
IABTCF_gdprApplies |
Number :
once - indéterminé (par défaut avant l'initialisation) |
IABTCF_PublisherCC |
String : Code ISO 3166-1 alpha-2 à deux lettres - Défaut: AA (inconnu) |
IABTCF_PurposeOneTreatment |
Number :
Annuler la valeur par défaut - Les fournisseurs peuvent utiliser cette valeur pour déterminer si le consentement à la première fin est requis. |
IABTCF_UseNonStandardStacks |
Number :
|
IABTCF_TCString |
String : Chaîne TC entièrement codée |
IABTCF_VendorConsents |
Binary String : Le '0' or '1' à la position n - où nl'indexation de commence à 0 - indique le statut de consentement pour l'ID du fournisseur n + 1; false et true respectivement. par exemple. '1' à l'index 0 est le consentement true pour l'ID du fournisseur 1
|
IABTCF_VendorLegitimateInterests |
Binary String : Le '0' or '1' à la position n - où nl'indexation de commence à 0 - indique le statut d'intérêt légitime pour l'ID du fournisseur n + 1; false et true respectivement. par exemple. '1' à l'index 0 l'intérêt légitime est-il établi true pour l'ID du fournisseur 1
|
IABTCF_PurposeConsents |
Binary String : Le '0' or '1' à la position n - où nl'indexation de commence à 0 - indique le statut de consentement pour l'identification d'objet n + 1; false et true respectivement. par exemple. '1' à l'index 0 est le consentement true à des fins d'identification 1
|
IABTCF_PurposeLegitimateInterests |
Binary String : Le '0' or '1' à la position n - où nl'indexation de commence à 0 - indique le statut d'intérêt légitime pour l'identification d'objet n + 1; false et true respectivement. par exemple. '1' à l'index 0 l'intérêt légitime est-il établi true à des fins d'identification 1
|
IABTCF_SpecialFeaturesOptIns |
Binary String : Le '0' or '1' à la position n - où nl'indexation de commence à 0 - indique le statut d'activation pour l'ID de fonction spéciale n + 1; false et true respectivement. par exemple. '1' à l'index 0 est opt-in true pour l'ID de fonction spéciale 1
|
IABTCF_PublisherRestrictions{ID} |
String ['0','1', or '2'] : La valeur à la position n - où nl'indexation de commence à 0 - indique le type de restriction de l'éditeur (0-2) pour le fournisseur n + 1; (voir Types de restrictions de l'éditeur). par exemple. '2' à l'index 0 est restrictionType 2 pour l'ID du fournisseur 1 . {ID} fait référence à l'ID d'objet. |
IABTCF_PublisherConsent |
Binary String : Le '0' or '1' à la position n - où nl'indexation de commence à 0 - indique le statut de consentement à l'objectif pour l'ID d'objet n + 1 pour l'éditeur, car ils correspondent aux objectifs de la liste mondiale des fournisseurs; false et true respectivement. par exemple. '1' à l'index 0 est le consentement true à des fins d'identification 1
|
IABTCF_PublisherLegitimateInterests |
Binary String : Le '0' or '1' à la position n - où nl'indexation de commence à 0 - indique le statut d'intérêt légitime de la finalité pour l'identification de la finalité n + 1 pour l'éditeur, car ils correspondent aux objectifs de la liste mondiale des fournisseurs; false et true respectivement. par exemple. '1' à l'index 0 l'intérêt légitime est-il établi true à des fins d'identification 1
|
IABTCF_PublisherCustomPurposesConsents |
Binary String : Le '0' or '1' à la position n - où nl'indexation de commence à 0 - indique le statut de consentement à la finalité pour l'ID de finalité personnalisée de l'éditeur n + 1 pour l'éditeur; false et true respectivement. par exemple. '1' à l'index 0 est le consentement true pour un identifiant à usage personnalisé 1
|
IABTCF_PublisherCustomPurposesLegitimateInterests |
Binary String : Le '0' or '1' à la position n - où nl'indexation de commence à 0 - indique le statut d'intérêt légitime de la finalité pour l'identifiant de finalité personnalisé de l'éditeur n + 1 pour l'éditeur; false et true respectivement. par exemple. '1' à l'index 0 l'intérêt légitime est-il établi true pour un identifiant à usage personnalisé 1
|
IAB États-Unis | |
IABUSPrivacy_String |
String : S'aligne sur l'avis IAB OpenRTB CCPA. La chaîne encode tous les choix et informations. |
Chaîne Google AC | |
IABTCF_AddtlConsent |
|
(Obsolète) Blocage de contenu dynamique avec espace réservé webView
Cette fonction est obsolète et sera supprimée à l'avenir. La raison de l'obsolescence est qu'avec les API d'activation et de désactivation du fournisseur et de l'objectif, il n'est plus nécessaire de créer un espace réservé. Vous pouvez ajouter votre propre interface utilisateur et votre propre logique métier et activer et désactiver dynamiquement les fournisseurs. Au lieu d'utiliser cette fonction, vous devez utiliser le enableVendorList() et désactiverVendorList() pour gérer les fournisseurs activés ou désactivés, et créez votre propre interface utilisateur pour afficher ces informations à l'utilisateur.
L'espace réservé viewObject peut être implémenté pour obtenir la fonctionnalité de blocage de contenu dynamique ici.Vous pouvez créer la vue avec la méthode suivante :
CMPPlaceholder placeholderView = CMPConsentTool.createPlaceholder(getApplicationContext(),CMPPlaceholderParams
.ofVendor("${vendorId}"), new CMPPlaceholderEventListener() {
@Override
public void vendorAccepted(WebView view) {
//... Actions to trigger if Consent is accepted
// Like showing Youtube Video View
}
});
Avec l'objet Wrapper CMPPlaceholderParams
vous pouvez également transmettre des paramètres facultatifs tels que des textes personnalisés ou une image d'aperçu facultative. Les fonctions du constructeur sont appelées setCustomplaceholder(String headline, String mainText, String checkboxText, String buttonText)
et setOptionalImageUrl(String imageUrl)
.
La logique métier requise, lorsque vous souhaitez afficher la vue et lorsqu'elle n'a pas besoin d'être appliquée par le développeur. Vous pouvez transmettre la condition et les actions requises en utilisant les rappels EvenListener du CMPPlaceholderEventlistener
. L'événement requis suivant doit être mis en œuvre :
Obligatoire: vendorAccepted(CMPPlaceholderView view) { // Your logic }
En option: errorOccurred(String message) { // Error handling }
Présentation de l'API (anciennes versions)
API |
Paramètres | Retour |
Description
|
openCmpConsentToolView( Contexte Contexte ) |
contexte: Le contexte de l'application | annuler | Affiche une vue modale avec la vue Web de consentement. Si la Conformité est acceptée ou rejetée, une fonction de clôture sera appelée. Vous pouvez remplacer cette fonction de fermeture par la vôtre. Par conséquent, implémentez OnCloseCallback et ajoutez-le en tant que paramètre. Interface utilisateur @apiNote -> exemple : Ouvrir la couche par action de bouton |
openCmpConsentToolView( Contexte contextuel, Rappel OnCloseCallback ) |
contexte: Le contexte de l'application
rappeler: Le OnCloseCallback qui doit être appelé lorsque la vue Web est fermée par action
|
annuler | Affiche une vue modale avec la vue Web de consentement. Si la Conformité est acceptée ou rejetée, une fonction de fermeture sera appelée. Vous pouvez remplacer cette fonction de fermeture par la vôtre. Pour cela, implémentez le OnCloseCallback et donnez-le à cette fonction. Cette méthode n'enverra plus de demande au serveur consentTool. Il utilisera le dernier état. Si vous souhaitez uniquement ouvrir à nouveau la vue de l'outil de consentement, si le serveur donne un statut de réponse == 1 utilisez la méthode checkAndProceedConsentUpdate @apiNote Interface utilisateur -> exemple : Ouvrir le calque par action de bouton |
setCloseCmpConsentToolViewListener( Rappel OnCloseCallback ) |
rappeler: Le OnCloseCallback qui doit être appelé lorsque la vue Web est fermée par action | annuler | Définit un écouteur. Si la Conformité est acceptée ou rejetée, cette fonction sera appelée. Vous pouvez remplacer cette fonction de fermeture par la vôtre. À cet effet, implémentez OnCloseCallback et ajoutez-le en tant que paramètre. |
setCustomCmpConsentToolViewAction( CustomOpenActionCallback customAction ) |
customAction : la customAction qui doit être appelée, en plus d'afficher le consentTool | annuler | Définit une action personnalisée sur une réponse du serveur. |
setErrorDialogCmpConsentToolViewListener( Rappel OnErrorDialogCallback ) |
rappeler: Le OnOpenCallback, qui doit être appelé, lorsque la vue sera ouverte. | annuler | Définit un écouteur. Si la vue de conformité est ouverte, cette fonction sera appelée. Vous pouvez remplacer cette fonction ouverte par la vôtre. Pour cela, implémentez OnOpenCallback et ajoutez-le en tant que paramètre. |
setNetworkErrorExceptionListener( Rappel OnNetworkExceptionCallback ) |
rappeler: Le OnErrorNetworkCallback qui doit être appelé. | annuler | Définit un écouteur qui est appelé, si une erreur réseau se produit. |
setOnCMPNotOpenedCallback( Rappel OnCMPNotOpenedCallback ) |
rappeler: L'action cmpNotOpenedCallback qui sera appelée | annuler | Définit une action lorsque le Consentlayer ne va pas s'ouvrir |
setOpenCmpConsentToolViewListener( Contexte contextuel, Bouton gdprBouton ) |
contexte: Puis Contexte de l'App bouton gdpr: Le bouton, le openCmpConsentToolViewListener doit être ajouté à |
annuler | Définit un écouteur sur le bouton donné. Si le bouton est cliqué, une vue modale sera affichée avec la vue Web de consentement. Si la Conformité est acceptée ou rejetée, une fonction de fermeture sera appelée. Vous pouvez remplacer cette fonction de fermeture par la vôtre. Pour cela, implémentez OnCloseCallback et ajoutez-le comme autre paramètre. Si le paramètre n'est pas défini, mais que setCloseCmpConsentToolViewListener a été utilisé pour ajouter un écouteur à l'événement de fermeture, celui-ci sera utilisé. |
setOpenCmpConsentToolViewListener( Contexte contextuel, Bouton gdprButton, Rappel OnCloseCallback ) |
contexte: Le contexte de l'application bouton gdpr: Le bouton, le openCmpConsentToolViewListener doit être ajouté à
rappeler: Le OnCloseCallback qui doit être appelé lorsque la vue Web est fermée par action |
annuler | Définit un écouteur sur le bouton donné. Si vous cliquez sur le bouton, une vue modale sera affichée avec la vue Web de consentement. Si la Conformité est acceptée ou rejetée, une fonction de clôture sera appelée. Vous pouvez remplacer cette fonction de fermeture par la vôtre. Par conséquent, implémentez OnCloseCallback et ajoutez-le comme dernier paramètre. |
setOpenCmpConsentToolViewListener( Rappel OnCloseCallback ) |
rappeler: Le OnCloseCallback qui doit être appelé lorsque la vue Web est fermée par action |
annuler | Définit un écouteur. Si la vue de conformité est ouverte, cette fonction sera appelée. Vous pouvez remplacer cette fonction ouverte par la vôtre. Pour cela, implémentez OnOpenCallback et ajoutez-le en tant que paramètre. |
setOpenPlaceHolderViewListener( Contexte contextuel, Bouton bouton, Fournisseur de cordes ) |
contexte: Le contexte de l'application bouton (dans la fenêtre de contrôle qui apparaît maintenant): Un bouton d'action pour créer la vue d'espace réservé vendeur: Le fournisseur qui est affecté à l'espace réservé |
annuler | Ouvre la vue d'espace réservé en cliquant sur le bouton pour le fournisseur attribué |
|
|||
appeléCeJour( contexte contextuel) |
contexte: Le contexte de l'application |
booléen: si le serveur a déjà été contacté ce jour | Renvoie si le serveur a déjà été contacté ce jour. |
clearAllValues(Contexte contextuel) |
contexte: Le contexte de l'application |
annuler | Réinitialise les données de consentement |
createPlaceholder( Contexte contextuel, CMPPlaceholderParams cmpPlaceholderParams, CmpPlaceholderEventListener cmpPlaceholderEventListener) |
contexte: Le contexte de l'application cmpPlaceholderParams : attribuer les paramètres d'espace réservé requis cmpPlaceholderEventListener: Interface EventListener pour les fonctions de processus personnalisées |
CmpPlaceholder & #XNUMX;: UIView de l'espace réservé | Crée une vue d'espace réservé pour le blocage de contenu dynamique |
exportCMPData(Contexte contextuel) |
contexte: Le contexte de l'application |
Chaîne: la chaîne de consentement | Une fonction d'exportation qui peut être appelée pour exporter la chaîne de consentement complète générée par un ConsentWebView et enregistrée dans les préférences partagées de cet appareil. |
getCalledLast (contexte contextuel) |
contexte: Le contexte de l'application |
Date: Date à laquelle le serveur a été appelé pour la dernière fois | Donne des informations sur la dernière date à laquelle le serveur a été contacté |
getConfig() |
|
CMPConfig: Objet CMPConfig |
Renvoie le CMPConfig qui est défini actuellement |
getGoogleACString() |
contexte: Le contexte de l'application |
Chaîne: chaîne de confidentialité américaine des fournisseurs qui a été définie consentmanager |
Renvoie la chaîne de confidentialité américaine, qui a été définie par consentmanager |
getInstance() |
|
CMPConsentTool: L'instant singleton initialisé du consentmanager |
Renvoie le CMPConsentTool. Si vous n'avez pas initialisé le CMPConsentTool avant, l'exception CMPConsentToolInitialisation sera levée. |
getInstanceUnsafe() |
|
CMPConsentTool: l'Instant singleton initialisé du consent Manager, ou nul. |
Renvoie le CMPConsentTool, ou null s'il n'a pas été initialisé. Cette méthode n'est pas sûre, car elle peut conduire à des exceptions de pointeur nul, mais si vous êtes sûr que ConsentTool a été initialisé auparavant, vous pouvez utiliser cette méthode, sans avoir besoin de détecter l'erreur. Nous vous recommandons de sauvegarder l'objet renvoyé de la méthode createInstant, d'utiliser les méthodes de la consentManager. |
getLastConsentString( contexte contextuel) |
contexte: Le contexte de l'application |
Chaîne: La dernière chaîne de consentement définie |
Renvoie le dernier consentement donné, présenté en base64 par consentManager |
getPurposes(Contexte contextuel) |
contexte: Le contexte de l'application |
Chaîne: La chaîne d'objectifs qui a été définie par consentmanager |
Renvoie la chaîne de buts, qui a été définie par consentmanager |
getUSPrivacyString (contexte contextuel) |
contexte: Le contexte de l'application |
Chaîne: La chaîne de confidentialité américaine des fournisseurs qui a été définie par consentmanager |
Renvoie la chaîne de confidentialité américaine, qui a été définie par consentmanager |
getVendorsString (contexte contextuel) |
contexte: Le contexte de l'application |
Chaîne: La chaîne de fournisseurs définie par consentmanager |
Renvoie la chaîne du fournisseur, qui a été définie par consentmanager |
hasPurposeConsent(contexte contextuel, Identifiant de chaîne, booléen isIABPurpose) |
contexte: le contexte de l'application id: L'identifiant du but estIABPonjet: Si l'objectif est défini par la norme IAB (V1/V2) |
booléen: Si le but a le consentement pour définir des cookies |
Renvoie, si le but (id) a le droit de définir des cookies. Attention: L'ID d'objectif est le même que celui indiqué dans la liste d'objectifs et peut avoir un préfixe tel que C |
hasVendorConsent( Contexte contextuel, Identifiant de chaîne, booléen isIABVendor) |
contexte: Le contexte de l'application id: L'identifiant du vendeur isIABVendor: si le fournisseur est défini par la norme IAB (V1/V2) |
booléen: Si le Vendeur a le Consentement à installer des cookies. |
Renvoie, si le vendeur (id) a le droit de définir des cookies
Attention : L'identifiant du fournisseur est le même que celui affiché dans la liste des fournisseurs et peut avoir un préfixe tel que C, S |
importCMPData( Contexte contextuel, Chaîne cmpData ) |
contexte: Le contexte de l'application cmpDonnées: La chaîne qui sera définie. La chaîne de consentement doit être transmise encodée en base64 |
booléen: Si l'importation a réussi, ou si des erreurs se produisent dans la chaîne |
Une méthode d'importation qui peut être appelée pour importer le ConsentString complet généré par un ConsentWebView dans les préférences partagées de cet appareil. |
besoinsAcceptation(Contexte contextuel) |
contexte: Le contexte de l'application |
booléen: si l'utilisateur doit donner son consentement |
Renvoie si l'utilisateur doit donner un consentement, parce qu'il ne l'a pas fait dans le passé, ou parce que le serveur de consentement a renvoyé, qu'un nouveau consentement est requis |
besoinsServeurUpdate(Contexte contextuel) |
contexte: Le contexte de l'application |
booléen: Si la consentmanager doit être mis à jour |
Si les CMPSettings doivent être mis à jour à partir du serveur, c'est qu'ils ne l'étaient pas à ce jour. |
|
|
|
|