Samla in profildata

Lär dig hur du samlar in profildata i en mobilapp.

Du kan använda profiltillägget för att lagra attribut om användaren på klienten. Den här informationen kan användas senare för att målinrikta och personalisera meddelanden i online- eller offlinescenarier, utan att du behöver ansluta till en server för optimala prestanda.

Profiltillägget hanterar CSOP (Client-Side Operation Profile), ger ett sätt att reagera på API:er, uppdatera attribut för användarprofiler och delar attribut för användarprofiler med resten av systemet som en genererad händelse.

Profildata används av andra tillägg för att utföra profilrelaterade åtgärder. Ett exempel är tillägget Regelmotor som förbrukar profildata och kör regler baserat på profildata. Läs mer om profiltillägget i dokumentationen

IMPORTANT
Profilfunktionerna som beskrivs i den här lektionen skiljer sig från kundprofilfunktionerna i realtid i Adobe Experience Platform och plattformsbaserade program.

Förhandskrav

  • App med SDK:er har installerats och konfigurerats.

Utbildningsmål

I den här lektionen kommer du att:

  • Ange eller uppdatera användarattribut.
  • Hämta användarattribut.

Ange och uppdatera användarattribut

Det skulle vara praktiskt för målgruppsanpassning och personalisering i appen att snabbt veta om en användare har köpt något tidigare eller nyligen. Låt oss konfigurera det i Luma-appen.

iOS
  1. Navigera till Luma > Luma > Utils > MobileSDK i Xcode Project-navigatorn och hitta funktionen func updateUserAttribute(attributeName: String, attributeValue: String). Lägg till följande kod:

    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)
    

    Den här koden:

    1. Ställer in en tom ordlista med namnet profileMap.

    2. Lägger till ett element i ordlistan med attributeName (till exempel isPaidUser) och attributeValue (till exempel yes).

    3. Använder profileMap-ordlistan som ett värde för parametern attributeDict i API-anropet UserProfile.updateUserAttributes.

  2. Navigera till Luma > Luma > Views > Products > ProductView i Xcode-projektnavigeraren och sök efter anropet till updateUserAttributes (i koden för knappen CreditCard ). Lägg till följande kod:

    code language-swift
    // Update attributes
    MobileSDK.shared.updateUserAttribute(attributeName: "isPaidUser", attributeValue: "yes")
    
Android
  1. Navigera till Android ChevronDown > app > kotlin+java > com.adobe.luma.tutorial.android > models > MobileSDK i Android Studio-navigatorn och hitta funktionen func updateUserAttribute(attributeName: String, attributeValue: String). Lägg till följande kod:

    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)
    

    Den här koden:

    1. Ställer in en tom karta med namnet profileMap.

    2. Lägger till ett element i kartan med attributeName (till exempel isPaidUser) och attributeValue (till exempel yes).

    3. Använder kartan profileMap som ett värde för parametern attributeDict i API-anropet UserProfile.updateUserAttributes.

  2. Navigera till Android ChevronDown > app > kotlin+java > com.adobe.luma.tutorial.android > views > ProductView.kt och hitta anropet till updateUserAttributes (i koden för knappen Köp CreditCard ). Lägg till följande kod:

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

Hämta användarattribut

När du har uppdaterat en användares attribut är det tillgängligt för andra Adobe SDK:er, men du kan även hämta attribut explicit, så att appen fungerar som du vill.

iOS
  1. Navigera till Luma > Luma > Views > General > HomeView i Xcode Project-navigatorn och hitta modifieraren .onAppear. Lägg till följande kod:

    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
            }
        }
    }
    

    Den här koden:

    1. Anropar UserProfile.getUserAttributes-API:t med attributnamnet isPaidUser som ett element i arrayen attributeNames.
    2. Kontrollerar sedan värdet för attributet isPaidUser och placerar ett märke på ikonen yesUserCheckedOut i verktygsfältet längst upp till höger när används.
Android
  1. Navigera till Android ChevronDown > app > kotlin+java > com.adobe.luma.tutorial.androi > views > HomeView.kt i projektnavigeraren i Android Studio och hitta modifieraren .onAppear. Lägg till följande kod:

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

    Den här koden:

    1. Anropar UserProfile.getUserAttributes-API:t med attributnamnet isPaidUser som ett element i arrayen attributeNames.
    2. Söker sedan efter värdet för attributet isPaidUser. När yes används ersätter koden personikonen med en ikon i verktygsfältet högst upp till höger.

Mer information finns i API-referensen.

Validera med Assurance

  1. Granska avsnittet installationsanvisningar för att ansluta simulatorn eller enheten till Assurance.
  2. Kör appen för att logga in och interagera med en produkt.
iOS
  1. Välj Home i flikfältet.

  2. Flytta ikonen Assurance åt vänster.

  3. Om du vill öppna inloggningsbladet klickar du på knappen Användare .

    {width="300"}

  4. Om du vill infoga ett slumpmässigt e-postmeddelande och ett kund-ID väljer du knappen A | .

  5. Välj Login.

    {width="300"}

  6. Välj Products i flikfältet.

  7. Välj en produkt.

  8. Välj Hjärta .

  9. Välj Kundvagn .

  10. Välj Kreditkort .

    {width="300"}

  11. Återgå till skärmen Home. Du bör se att ett märke har lagts till UserCheckedOut .

    {width="300"}

Android
  1. Välj Home i flikfältet.

  2. Flytta ikonen Assurance åt vänster.

  3. Om du vill öppna inloggningsbladet klickar du på knappen Användare .

    {width="300"}

  4. Välj Generate Random Email om du vill infoga ett slumpmässigt e-postmeddelande och ett kund-ID.

  5. Välj Login.

    {width="300"}

  6. Välj Products i flikfältet.

  7. Välj en produkt.

  8. Välj ThumbUp

  9. Välj Kundvagn .

  10. Välj Kreditkort .

    {width="300"}

  11. Återgå till skärmen Home. Du bör se att personikonen uppdateras.

    {width="300"}

I Assurance-gränssnittet bör du se en UserProfileUpdate- och getUserAttributes-händelse med det uppdaterade profileMap-värdet.

validera profil {modal="regular"}

SUCCESS
Du har nu konfigurerat din app för att uppdatera profilattribut i Edge Network och (när den har konfigurerats) med Adobe Experience Platform.
Tack för att du har lagt ned din tid på att lära dig om Adobe Experience Platform Mobile SDK. Om du har frågor, vill dela allmän feedback eller har förslag på framtida innehåll kan du dela dem i det här Experience League Community-diskussionsinlägget.

Nästa: Använd platser

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