Implémenter le consentement
Découvrez comment implémenter le consentement dans une application mobile.
L’extension mobile de consentement Adobe Experience Platform permet la collecte de préférences de consentement à partir de votre application mobile lors de l’utilisation de la SDK mobile Adobe Experience Platform et de l’extension Edge Network. En savoir plus sur l’extension de consentement dans la documentation.
Conditions préalables
- Application créée et exécutée avec succès avec les SDK installés et configurés.
Objectifs d’apprentissage
Dans cette leçon, vous allez :
- Demander le consentement de l’utilisateur.
- Mettez à jour l’extension en fonction de la réponse de l’utilisateur.
- Découvrez comment obtenir l’état de consentement actuel.
Demander le consentement
Si vous avez suivi le tutoriel depuis le début, vous vous souvenez peut-être que vous avez défini le consentement par défaut dans l’extension de consentement sur En attente - Événements de file d’attente qui se produisent avant que l’utilisateur ne fournisse des préférences de consentement.
Pour commencer à collecter des données, vous devez obtenir le consentement de l’utilisateur. Dans une application réelle, vous pouvez consulter les bonnes pratiques en matière de consentement pour votre région. Dans ce tutoriel, vous obtenez le consentement de l’utilisateur en le demandant simplement avec une alerte :
-
Vous ne souhaitez demander le consentement de l’utilisateur qu’une seule fois. Vous devez associer le consentement de Mobile SDK à l’autorisation requise pour le suivi à l’aide d’Apple Cadre de transparence du suivi des applications. Dans cette application, vous supposez que lorsque l’utilisateur autorise le suivi, il consent à la collecte des événements.
-
Accédez à Luma > Luma > Utils > MobileSDK dans le navigateur de projet Xcode.
Ajoutez ce code à la fonction
updateConsent
.code language-swift // Update consent let collectConsent = ["collect": ["val": value]] let currentConsents = ["consents": collectConsent] Consent.update(with: currentConsents) MobileCore.updateConfigurationWith(configDict: currentConsents)
-
Accédez à Luma > Luma > Views > General > DisclaimerView dans le navigateur de projet de Xcode. Le navigateur de projet du code est la vue qui s’affiche après l’installation ou la réinstallation de l’application et le premier démarrage de l’application. L’utilisateur est invité à autoriser le suivi selon le framework de transparence du suivi des applications d’Apple. Si l’utilisateur ou l’utilisatrice l’autorise, vous mettez également à jour le consentement.
Ajoutez le code suivant à la fermeture du
ATTrackingManager.requestTrackingAuthorization { status in
.code language-swift // Add consent based on authorization if status == .authorized { // Set consent to yes MobileSDK.shared.updateConsent(value: "y") } else { // Set consent to yes MobileSDK.shared.updateConsent(value: "n") }
-
Vous ne souhaitez demander le consentement de l’utilisateur qu’une seule fois. Dans cette application, vous supposez que lorsque l’utilisateur autorise le suivi, il consent à la collecte des événements.
-
Accédez à app > kotlin+java > com.adobe.luma.tutorial.android > models > MobileSDK dans le navigateur d’Android Studio.
Ajoutez ce code à la fonction
updateConsent(value: String)
.code language-kotlin // Update consent val collectConsent = mapOf("collect" to mapOf("val" to value)) val currentConsents = mapOf("consents" to collectConsent) Consent.update(currentConsents) MobileCore.updateConfiguration(currentConsents)
-
Accédez à app > kotlin+java > com.adobe.luma.tutorial.android > views > DisclaimerView.kt dans le navigateur d’Android Studio.
Ajoutez le code suivant à la fonction
DisclaimerView(navController: NavController)
sous// Set content to yes
et// Set content to no
.code language-kotlin // Add consent based on authorization if (status) { showPersonalizationWarning = false // Set consent to yes MobileSDK.shared.updateTrackingStatus(TrackingStatus.AUTHORIZED) MobileSDK.shared.updateConsent("y") } else { Toast.makeText( context, "You will not receive offers and location tracking will be disabled.", Toast.LENGTH_LONG ).show() showPersonalizationWarning = true // Set consent to no MobileSDK.shared.updateTrackingStatus(TrackingStatus.DENIED) MobileSDK.shared.updateConsent("n") }
Obtention de l’état de consentement actuel
L’extension mobile de consentement supprime/met en attente/autorise automatiquement le suivi en fonction de la valeur de consentement actuelle. Vous pouvez également accéder vous-même à l’état de consentement actuel :
-
Accédez à Luma > Luma > Utils > MobileSDK dans le navigateur de projet de Xcode.
Ajoutez le code suivant à la fonction
getConsents
:code language-swift // Get consents Consent.getConsents { consents, error in guard error == nil, let consents = consents else { return } guard let jsonData = try? JSONSerialization.data(withJSONObject: consents, options: .prettyPrinted) else { return } guard let jsonStr = String(data: jsonData, encoding: .utf8) else { return } Logger.aepMobileSDK.info("Consent getConsents: \(jsonStr)") }
-
Accédez à Luma > Luma > Views > General > HomeView dans le navigateur de projet de Xcode.
Ajoutez le code suivant au modificateur
.task
:code language-swift // Ask status of consents MobileSDK.shared.getConsents()
Dans l’exemple ci-dessus, vous consignez simplement le statut du consentement dans la console dans Xcode. Dans un scénario réel, vous pouvez l’utiliser pour modifier les menus ou les options présentés à l’utilisateur ou l’utilisatrice.
-
Accédez à app > kotlin+java > com.adobe.luma.tutorial.android > models > MobileSDK dans le navigateur d’Android Studio.
Ajoutez le code suivant à la fonction
getConsents()
:code language-kotlin // Get consents Consent.getConsents { callback -> if (callback != null) { val jsonStr = JSONObject(callback).toString(4) Log.i("MobileSDK", "Consent getConsents: $jsonStr") } }
-
Accédez à app > kotlin+java > com.adobe.luma.tutorial.android > views > HomeView.kt dans le navigateur d’Android Studio.
Ajoutez le code suivant à
LaunchedEffect(unit)
:code language-kotlin // Ask status of consents MobileSDK.shared.getConsents()
Dans l’exemple ci-dessus, vous consignez simplement le statut du consentement dans la console d’Android Studio. Dans un scénario réel, vous pouvez l’utiliser pour modifier les menus ou les options présentés à l’utilisateur ou l’utilisatrice.
Valider avec Assurance
-
Supprimez l’application de votre appareil ou simulateur pour réinitialiser et initialiser correctement le suivi et le consentement.
-
Pour connecter votre simulateur ou appareil à Assurance, consultez la section instructions de configuration.
-
Lorsque vous passez de l’écran Accueil à l’écran Produits et revenez à l’écran Accueil, un événement Obtenir une réponse de consentement doit s’afficher dans l’interface utilisateur d’Assurance.
Suivant : Collecter des données de cycle de vie