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ägg i dokumentationen
Förutsättningar
- 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 kan vara bra att ha som mål och/eller personalisering i appen för att snabbt veta om en användare har köpt något tidigare eller nyligen. Låt oss konfigurera det i Luma-appen.
-
Navigera till Luma > Luma > Utils > MobileSDK i Xcode Project navigator och hitta
func updateUserAttribute(attributeName: String, attributeValue: String)
funktion. 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:
-
Ställer in en tom ordlista med namnet
profileMap
. -
Lägger till ett element i ordlistan med
attributeName
(till exempelisPaidUser
), ochattributeValue
(till exempelyes
). -
Använder
profileMap
ordlista som ett värde förattributeDict
parametern förUserProfile.updateUserAttributes
API-anrop.
-
-
Navigera till Luma > Luma > Views > Products > ProductView i Xcode Project navigator och hitta anropet till
updateUserAttributes
(inom koden för köpet) {width="15"} -knapp). Lägg till följande kod:code language-swift // Update attributes MobileSDK.shared.updateUserAttribute(attributeName: "isPaidUser", attributeValue: "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.
-
Navigera till Luma > Luma > Views > General > HomeView i Xcode Project navigator och hitta
.onAppear
modifierare. 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:
- Anropar
UserProfile.getUserAttributes
API medisPaidUser
attributnamn som enskilt element iattributeNames
array. - Kontrollerar sedan värdet för
isPaidUser
och näryes
, placerar ett märke på {width="20"} i verktygsfältet längst upp till höger.
- Anropar
Ytterligare dokumentation finns här.
Validera med Assurance
-
Granska installationsanvisningar för att ansluta simulatorn eller enheten till Assurance.
-
Kör appen för att logga in och interagera med en produkt.
-
Flytta Assurance-ikonen åt vänster.
-
Välj Startsida i tabbfältet.
-
Om du vill öppna inloggningsbladet väljer du {width="15"} -knappen.
{width="300"}
-
Välj {width="15"} knapp .
-
Välj Inloggning.
{width="300"}
-
Välj Products i tabbfältet.
-
Välj en produkt.
-
Välj {width="15"}.
-
Välj {width="20"}.
-
Välj {width="15"}.
{width="300"}
-
Återgå till Startsida skärm. Du bör se att ett märke har lagts till {width="15"}.
{width="300"}
-
-
I försäkringsgränssnittet bör du se en UserProfileUpdate och getUserAttributes händelser med uppdaterade
profileMap
värde.
Nästa: Använd platser