Erfassen von Profildaten

Erfahren Sie, wie Sie Profildaten in einer Mobile App erfassen.

Sie können die Profilerweiterung verwenden, um Attribute über Ihre Benutzerin oder Ihren Benutzer auf dem Client zu speichern. Diese Informationen können später zum Targeting und zur Personalisierung von Nachrichten in Online- oder Offline-Szenarien verwendet werden, ohne dass eine Verbindung zu einem Server hergestellt werden muss, um eine optimale Leistung zu erzielen.

Die Profilerweiterung verwaltet das Client-seitige Vorgangsprofil (CSOP), bietet eine Möglichkeit, auf APIs zu reagieren, aktualisiert Benutzerprofilattribute und gibt die Benutzerprofilattribute als generiertes Ereignis für den Rest des Systems frei.

Die Profildaten werden von anderen Erweiterungen verwendet, um profilbezogene Aktionen durchzuführen. Ein Beispiel hierfür ist die Erweiterung Regel-Engine , die die Profildaten verwendet und Regeln auf der Grundlage der Profildaten ausführt. Weitere Informationen zur Profilerweiterung finden Sie in der Dokumentation

IMPORTANT
Die in dieser Lektion beschriebene Profilfunktion ist getrennt von der Echtzeit-Kundenprofilfunktion in Adobe Experience Platform und plattformbasierten Anwendungen.

Voraussetzungen

  • App mit installierten und konfigurierten SDKs erfolgreich erstellt und ausgeführt.

Lernziele

In dieser Lektion erfahren Sie Folgendes:

  • Benutzerattribute festlegen oder aktualisieren.
  • Abrufen von Benutzerattributen.

Benutzerattribute festlegen und aktualisieren

Für Targeting und Personalisierung in der App ist es hilfreich, schnell zu wissen, ob ein Benutzer in der Vergangenheit oder kürzlich einen Kauf getätigt hat. Richten wir das in der Luma-App ein.

iOS
  1. Navigieren Sie im Xcode-Projekt-Navigator zu Luma > Luma > Utils > MobileSDK und suchen Sie nach der func updateUserAttribute(attributeName: String, attributeValue: String). Fügen Sie den folgenden Code hinzu:

    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)
    

    Dieser Code:

    1. Ein leeres Wörterbuch mit dem Namen profileMap wird eingerichtet.

    2. Fügt dem Wörterbuch ein Element mithilfe von attributeName (z. B. isPaidUser) und attributeValue (z. B. yes) hinzu.

    3. Verwendet das profileMap als Wert für den attributeDict des UserProfile.updateUserAttributes-API-Aufrufs.

  2. Navigieren Sie im Xcode-Projekt-Navigator zu Luma > Luma > Views > Products > ProductView und suchen Sie den Aufruf an updateUserAttributes (im Code für die Schaltfläche Bestellungen Kreditkarte ). Fügen Sie den folgenden Code hinzu:

    code language-swift
    // Update attributes
    MobileSDK.shared.updateUserAttribute(attributeName: "isPaidUser", attributeValue: "yes")
    
Android
  1. Android Navigieren Sie im Android Studio-Navigator zu ChevronDown > app > kotlin+java > com.adobe.luma.tutorial.android > models > MobileSDK und suchen Sie nach der func updateUserAttribute(attributeName: String, attributeValue: String). Fügen Sie den folgenden Code hinzu:

    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)
    

    Dieser Code:

    1. Richtet eine leere Zuordnung mit dem Namen profileMap ein.

    2. Fügt der Zuordnung ein Element mithilfe von attributeName (zum Beispiel isPaidUser) und attributeValue (zum Beispiel yes) hinzu.

    3. Verwendet die profileMap Zuordnung als Wert zum attributeDict des UserProfile.updateUserAttributes-API-Aufrufs.

  2. Navigieren Sie zu Android ChevronDown > app > kotlin+java > com.adobe.luma.tutorial.android > views > ProductView.kt und suchen Sie den Aufruf an updateUserAttributes (im Code für die Schaltfläche CreditCard ). Fügen Sie den folgenden Code hinzu:

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

Benutzerattribute abrufen

Nachdem Sie das Attribut eines Benutzers aktualisiert haben, ist es für andere Adobe-SDKs verfügbar, Sie können jedoch auch Attribute explizit abrufen, damit sich Ihre App wie gewünscht verhält.

iOS
  1. Navigieren Sie im Xcode-Projekt-Navigator zu Luma > Luma > Views > General > HomeView und suchen Sie den .onAppear. Fügen Sie den folgenden Code hinzu:

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

    Dieser Code:

    1. Ruft die UserProfile.getUserAttributes-API mit dem isPaidUser Attributnamen als einzelnes Element im attributeNames-Array auf.
    2. Sucht dann nach dem Wert des isPaidUser Attributs und platziert yes oben rechts in der Symbolleiste ein Badge das Symbol UserCheckedOut .
Android
  1. Navigieren Sie im Android -Projektnavigator zu Android ChevronDown > app > kotlin+java > com.adobe.luma.tutorial.androi > views > HomeView.kt und suchen Sie nach dem .onAppear. Fügen Sie den folgenden Code hinzu:

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

    Dieser Code:

    1. Ruft die UserProfile.getUserAttributes-API mit dem isPaidUser Attributnamen als einzelnes Element im attributeNames-Array auf.
    2. Prüft dann auf den Wert des isPaidUser. Wenn yes, ersetzt der Code das Personensymbol durch ein Badge-Symbol in der Symbolleiste oben rechts.

Weitere Informationen finden Sie APIReferenz.

Mit Assurance validieren

  1. Lesen Sie den Abschnitt Setup-Anweisungen, um Ihren Simulator oder Ihr Gerät mit Assurance zu verbinden.
  2. Führen Sie die App aus, um sich anzumelden und mit einem Produkt zu interagieren.
iOS
  1. Wählen Sie Startseite in der Registerkartenleiste aus.

  2. Verschieben Sie das Assurance-Symbol nach links.

  3. Um die Anmeldungsseite zu öffnen, klicken Sie auf die Schaltfläche Benutzer .

    {width="300"}

  4. Um eine zufällige E-Mail und Kunden-ID einzufügen, wählen Sie A Schaltfläche | .

  5. Wählen Sie Anmelden aus.

    {width="300"}

  6. Wählen Sie Products in der Registerkartenleiste aus.

  7. Ein Produkt auswählen.

  8. Wählen Sie Herz aus.

  9. Wählen Sie Warenkorb aus.

  10. Wählen Sie Kreditkarte aus.

    {width="300"}

  11. Kehren Sie zum Bildschirm Startseite zurück. Sie sollten sehen, dass ein Abzeichen hinzugefügt wurde UserCheckedOut .

    {width="300"}

Android
  1. Wählen Sie Startseite in der Registerkartenleiste aus.

  2. Verschieben Sie das Assurance-Symbol nach links.

  3. Um die Anmeldungsseite zu öffnen, klicken Sie auf die Schaltfläche Benutzer .

    {width="300"}

  4. Um eine zufällige E-Mail und Kunden-ID einzufügen, wählen Sie Zufällige E-Mail generieren aus.

  5. Wählen Sie Anmelden aus.

    {width="300"}

  6. Wählen Sie Products in der Registerkartenleiste aus.

  7. Ein Produkt auswählen.

  8. Wählen Sie ThumbUp

  9. Wählen Sie Warenkorb aus.

  10. Wählen Sie Kreditkarte aus.

    {width="300"}

  11. Kehren Sie zum Bildschirm Startseite zurück. Sie sollten sehen, dass das Personensymbol aktualisiert wird.

    {width="300"}

In der Assurance-Benutzeroberfläche sollten die Ereignisse UserProfileUpdate und getUserAttributes mit dem aktualisierten profileMap angezeigt werden.

Profil validieren {modal="regular"}

SUCCESS
Sie haben jetzt Ihre App so eingerichtet, dass Attribute von Profilen in der Edge Network und (wenn eingerichtet) in Adobe Experience Platform aktualisiert werden.
Vielen Dank, dass Sie sich Zeit genommen haben, um mehr über Adobe Experience Platform Mobile SDK zu erfahren. Wenn Sie Fragen haben, allgemeines Feedback geben möchten oder Vorschläge für zukünftige Inhalte haben, teilen Sie diese auf diesem Experience League Community-Diskussionsbeitrag.

Weiter: Verwenden Sie Orte

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