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. Pour en savoir plus sur l’ 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 la fonction
func updateUserAttribute(attributeName: String, attributeValue: String)
. 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 en utilisant
attributeName
(par exempleisPaidUser
) etattributeValue
(par exempleyes
). -
Utilise le dictionnaire
profileMap
comme valeur du paramètreattributeDict
de l’appel APIUserProfile.updateUserAttributes
.
-
-
Accédez à Luma > Luma > Views > Products > ProductView dans le navigateur de projet Xcode et recherchez l’appel à
updateUserAttributes
(dans le code pour les achats). bouton {width="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 modificateur
.onAppear
. 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 l’API
UserProfile.getUserAttributes
avec le nom d’attributisPaidUser
comme élément unique dans le tableauattributeNames
. -
Ensuite, vérifie la valeur de l’attribut
isPaidUser
et, lorsqueyes
, place un badge sur l’attribut icône{width="20"}
dans la barre d’outils en haut à droite.
-
Vous trouverez plus de documentation ici.
Valider avec Assurance
-
Consultez la section instructions de configuration pour connecter votre simulateur ou périphérique à Assurance.
-
Exécutez l’application pour vous connecter et interagir avec un produit.
-
Déplacez l’icône Assurance vers la gauche.
-
Sélectionnez Home dans la barre d’onglets.
-
Pour ouvrir la feuille de connexion, sélectionnez la Bouton {width="15"}.
{width="300"}
-
Pour insérer un e-mail aléatoire et un ID de client, sélectionnez la variable Bouton {width="15"} .
-
Sélectionnez Login.
{width="300"}
-
Sélectionnez Products dans la barre d’onglets.
-
Sélectionnez un produit.
-
Sélectionner {width="15"}.
-
Sélectionner {width="20"}.
-
Sélectionner {width="15"}.
{width="300"}
-
Revenez à l’écran Home . Vous devriez constater qu’un badge a été ajouté. {width="15"}.
{width="300"}
-
-
Dans l’interface utilisateur d’Assurance, vous devriez voir des événements UserProfileUpdate et getUserAttributes avec la valeur
profileMap
mise à jour.
Suivant : Utiliser des espaces