Collecter des données de profil

Découvrez comment collecter des données de profil dans une application mobile.

Vous pouvez utiliser l’extension de profil pour stocker des attributs sur votre utilisateur sur le client. Ces informations peuvent être utilisées ultérieurement pour cibler et personnaliser des messages lors de scénarios en ligne ou hors ligne, sans avoir à se connecter à un serveur pour des performances optimales.

L’extension de profil gère le profil d’opération côté client (CSOP), permet de réagir aux API, met à jour les attributs de profil utilisateur et partage 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 aux profils. Exemple : l’extension du moteur de règles qui utilise les données de profil et exécute les règles en fonction des données de profil. En savoir plus sur l’extension Profile dans la documentation

IMPORTANT
La fonctionnalité de profil décrite dans cette leçon est distincte de la fonctionnalité de profil client en temps réel dans les applications Adobe Experience Platform et basées sur Platform.

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 :

  • Définissez ou mettez à jour les attributs utilisateur.
  • Récupérez les attributs utilisateur.

Définition et mise à jour des attributs utilisateur

Il serait utile pour le ciblage et la personnalisation dans l’application de savoir rapidement si un utilisateur a effectué un achat dans le passé ou récemment. Configurez-le dans l’application Luma.

iOS
  1. 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 :

    1. Configure un dictionnaire vide nommé profileMap.

    2. Ajoute un élément au dictionnaire en utilisant attributeName (par exemple, isPaidUser) et attributeValue (par exemple, yes).

    3. Utilise le dictionnaire de profileMap comme valeur du paramètre attributeDict de l’appel API UserProfile.updateUserAttributes.

  2. Accédez à Luma > Luma > Views > Products > ProductView dans le navigateur de projet Xcode et recherchez l’appel à updateUserAttributes (dans le code du bouton Achats Carte de crédit ). Ajoutez le code suivant :

    code language-swift
    // Update attributes
    MobileSDK.shared.updateUserAttribute(attributeName: "isPaidUser", attributeValue: "yes")
    
Android
  1. Accédez à Android ChevronDown > app > kotlin+java > com.adobe.luma.tutorial.android > models > MobileSDK dans le navigateur d’Android Studio et recherchez la fonction func updateUserAttribute(attributeName: String, attributeValue: String). Ajoutez le code suivant :

    code language-kotlin
    // Create a profile map, add attributes to the map and update profile using the map
    val profileMap = mapOf(attributeName to attributeValue)
    UserProfile.updateUserAttributes(profileMap)
    

    Ce code :

    1. Configure un mappage vide nommé profileMap.

    2. Ajoute un élément au mappage à l’aide des attributeName (par exemple, isPaidUser) et attributeValue (par exemple, yes).

    3. Utilise le mappage profileMap comme valeur du paramètre attributeDict de l’appel API UserProfile.updateUserAttributes.

  2. Accédez à Android ChevronDown > app > kotlin+java > com.adobe.luma.tutorial.android > views > ProductView.kt et recherchez l’appel à updateUserAttributes (dans le code du bouton Achats Carte de crédit ). Ajoutez le code suivant :

    code language-kotlin
    // Update attributes
    MobileSDK.shared.updateUserAttribute("isPaidUser", "yes")
    

Obtenir les attributs utilisateur

Une fois que vous avez mis à jour l’attribut d’un utilisateur, il est disponible pour d’autres SDK Adobe, mais vous pouvez également récupérer les attributs explicitement, pour permettre à votre application de se comporter comme vous le souhaitez.

iOS
  1. 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 :

    1. Appelle l’API UserProfile.getUserAttributes avec le nom d’attribut isPaidUser comme élément unique dans le tableau attributeNames .
    2. Recherche ensuite la valeur de l’attribut isPaidUser et, lorsqu’il est yes, place un badge sur l’icône UserCheckedOut dans la barre d’outils supérieure droite.
Android
  1. Accédez à Android ChevronDown > app > kotlin+java > com.adobe.luma.tutorial.androi > views > HomeView.kt dans le navigateur de projet Android Studio et recherchez le modificateur .onAppear. Ajoutez le code suivant :

    code language-kotlin
    // Get attributes
    UserProfile.getUserAttributes(listOf("isPaidUser")) { attributes ->
        showBadgeForUser = attributes?.get("isPaidUser") == "yes"
    }
    

    Ce code :

    1. Appelle l’API UserProfile.getUserAttributes avec le nom d’attribut isPaidUser comme élément unique dans le tableau attributeNames .
    2. Recherche ensuite la valeur de l’attribut isPaidUser. Lorsqu’il est yes, le code remplace l’icône de personne par une icône de badge dans la barre d’outils supérieure droite.

Pour plus d’informations, consultez la référence de l’API.

Valider avec Assurance

  1. Consultez la section instructions de configuration pour connecter votre simulateur ou votre appareil à Assurance.
  2. Exécutez l’application pour vous connecter et interagir avec un produit.
iOS
  1. Sélectionnez Accueil dans la barre d’onglets.

  2. Déplacez l’icône Assurance vers la gauche.

  3. Pour ouvrir la feuille de connexion, sélectionnez le bouton Utilisateur .

    {width="300"}

  4. Pour insérer un e-mail et un ID de client aléatoires, sélectionnez l’A Bouton | .

  5. Sélectionnez Connexion.

    {width="300"}

  6. Sélectionnez Products dans la barre d’onglets.

  7. Sélectionnez un produit.

  8. Sélectionnez Cœur .

  9. Sélectionnez Panier .

  10. Sélectionnez Carte de crédit .

    {width="300"}

  11. Revenez à l’écran Accueil. Vous devriez constater qu’un badge a été ajouté UserCheckedOut .

    {width="300"}

Android
  1. Sélectionnez Accueil dans la barre d’onglets.

  2. Déplacez l’icône Assurance vers la gauche.

  3. Pour ouvrir la feuille de connexion, sélectionnez le bouton Utilisateur .

    {width="300"}

  4. Pour insérer un e-mail aléatoire et un ID de client, sélectionnez Générer un e-mail aléatoire .

  5. Sélectionnez Connexion.

    {width="300"}

  6. Sélectionnez Products dans la barre d’onglets.

  7. Sélectionnez un produit.

  8. Sélectionnez Pouce levé

  9. Sélectionnez Panier .

  10. Sélectionnez Carte de crédit .

    {width="300"}

  11. Revenez à l’écran Accueil. Vous devriez voir que l’icône de personne est mise à jour.

    {width="300"}

Dans l’interface utilisateur d’Assurance, vous devriez voir un événement UserProfileUpdate et getUserAttributes avec la valeur de profileMap mise à jour.

valider le profil {modal="regular"}

SUCCESS
Vous avez maintenant configuré votre application pour mettre à jour les attributs des profils dans Edge Network et (lorsqu’elle est configurée) avec Adobe Experience Platform.
Merci d’avoir consacré votre temps à découvrir Adobe Experience Platform Mobile SDK. Si vous avez des questions, souhaitez partager des commentaires généraux ou des suggestions sur le contenu futur, partagez-les dans ce article de discussion de la communauté Experience League.

Suivant : Utiliser des endroits

recommendation-more-help
9fed61f5-c338-47ad-8005-0b89a5f4af8b