Collecte des données de profil
Découvrez comment collecter des données de profil dans une application mobile.
Vous pouvez utiliser l’extension Profile pour stocker les attributs de votre utilisateur sur le client. Ces informations peuvent être utilisées ultérieurement pour cibler et personnaliser les messages lors de scénarios en ligne ou hors ligne, sans avoir à se connecter à un serveur pour des performances optimales. L’extension Profile gère le profil d’opération côté client (CSOP), permet de réagir aux API, de mettre à jour les attributs de profil utilisateur et de partager les attributs de profil utilisateur avec le reste du système en tant qu’événement généré.
Les données de profil sont utilisées par d’autres extensions pour effectuer des actions liées au profil. Par exemple, l’extension Rules Engine qui consomme les données de profil et exécute des règles basées sur les données de profil. En savoir plus sur les Extension de profil dans la documentation
Conditions préalables
- Création et exécution de l’application avec les SDK installés et configurés.
Objectifs d'apprentissage
Dans cette leçon, vous allez :
- Définir ou mettre à jour des attributs utilisateur.
- Récupérez les attributs utilisateur.
Définition et mise à jour des attributs utilisateur
Il serait utile pour le ciblage et/ou la personnalisation dans l’application de savoir rapidement si un utilisateur a effectué un achat dans le passé ou récemment. Définissons-le dans l’application Luma.
-
Accédez à Luma > Luma > Utils > MobileSDK dans le navigateur de projet Xcode et recherchez le
func updateUserAttribute(attributeName: String, attributeValue: String)
de la fonction Ajoutez le code suivant :code language-swift // Create a profile map, add attributes to the map and update profile using the map var profileMap = [String: Any]() profileMap[attributeName] = attributeValue UserProfile.updateUserAttributes(attributeDict: profileMap)
Ce code :
-
Configure un dictionnaire vide nommé
profileMap
. -
Ajoute un élément au dictionnaire à l’aide de
attributeName
(par exempleisPaidUser
), etattributeValue
(par exempleyes
). -
Utilise la variable
profileMap
comme valeur du dictionnaireattributeDict
du paramètreUserProfile.updateUserAttributes
appel API.
-
-
Accédez à Luma > Luma > Views > Products > ProductView dans le navigateur de projet Xcode et recherchez l’appel à
updateUserAttributes
(dans le code des Achats ;+-------------+ | img-md | +=============+ | w-15 | +-------------+ | | +-------------+). Ajoutez le code suivant :code language-swift // Update attributes MobileSDK.shared.updateUserAttribute(attributeName: "isPaidUser", attributeValue: "yes")
Obtention des attributs utilisateur
Une fois que vous avez mis à jour l’attribut d’un utilisateur, il est disponible pour d’autres SDK d’Adobe, mais vous pouvez également récupérer explicitement les attributs pour permettre à votre application de se comporter comme vous le souhaitez.
-
Accédez à Luma > Luma > Views > General > HomeView dans le navigateur de projet Xcode et recherchez le
.onAppear
modifier. Ajoutez le code suivant :code language-swift // Get attributes UserProfile.getUserAttributes(attributeNames: ["isPaidUser"]) { attributes, error in if attributes?.count ?? 0 > 0 { if attributes?["isPaidUser"] as? String == "yes" { showBadgeForUser = true } else { showBadgeForUser = false } } }
Ce code :
-
Appelle le
UserProfile.getUserAttributes
avec l’APIisPaidUser
nom d’attribut comme élément unique dansattributeNames
tableau. -
Vérifie ensuite la valeur de la variable
isPaidUser
et quandyes
, place un badge sur l’objetimg-md w-20 dans la barre d’outils supérieure droite.
-
Vous trouverez de la documentation supplémentaire here.
Validation avec Assurance
-
Consultez la section instructions de configuration pour connecter le simulateur ou l’appareil à Assurance.
-
Exécutez l’application pour vous connecter et interagir avec un produit.
-
Déplacez l’icône Assurance vers la gauche.
-
Sélectionner Accueil dans la barre d’onglets.
-
Pour ouvrir la feuille de connexion, sélectionnez la+-------------+ | img-md | +=============+ | w-15 | +-------------+ | | +-------------+bouton .
img-md w-300 -
Pour insérer un e-mail aléatoire et un ID de client, sélectionnez la variable+-------------+ | img-md | +=============+ | w-15 | +-------------+ | | +-------------+bouton .
-
Sélectionner Connexion.
img-md w-300 -
Sélectionner Products dans la barre d’onglets.
-
Sélectionnez un produit.
-
Sélectionner+-------------+ | img-md | +=============+ | w-15 | +-------------+ | | +-------------+.
-
Sélectionner+-------------+ | img-md | +=============+ | w-20 | +-------------+ | | +-------------+.
-
Sélectionner+-------------+ | img-md | +=============+ | w-15 | +-------------+ | | +-------------+.
img-md w-300 -
Revenir à Accueil écran. Vous devriez constater qu’un badge a été ajouté.+-------------+ | img-md | +=============+ | w-15 | +-------------+ | | +-------------+.
img-md w-300
-
-
Dans l’interface utilisateur d’Assurance, une UserProfileUpdate et getUserAttributes avec les événements mis à jour
profileMap
.
Suivant : Utiliser des emplacements