Profildaten erfassen
Erfahren Sie, wie Sie Profildaten in einer Mobile App erfassen.
Sie können die Profil-Erweiterung verwenden, um Attribute über Ihren Benutzer auf dem Client zu speichern. Diese Informationen können später verwendet werden, um Nachrichten in Online- oder Offline-Szenarien auszuwählen und zu personalisieren, ohne dass für eine optimale Leistung eine Verbindung zu einem Server hergestellt werden muss. Die Profil-Erweiterung verwaltet das clientseitige Aktionsprofil (CSOP), bietet eine Möglichkeit, auf APIs zu reagieren, aktualisiert Benutzerprofilattribute und gibt die Benutzerprofilattribute für den Rest des Systems als generiertes Ereignis frei.
Die Profildaten werden von anderen Erweiterungen verwendet, um profilbezogene Aktionen durchzuführen. Ein Beispiel ist die Regel-Engine-Erweiterung, die die Profildaten nutzt und Regeln basierend auf den Profildaten ausführt. Weitere Informationen zur Profil-Erweiterung finden Sie in der Dokumentation .
Voraussetzungen
- App erfolgreich erstellt und ausgeführt, wobei SDKs installiert und konfiguriert sind.
Lernziele
In dieser Lektion werden Sie:
- Festlegen oder Aktualisieren von Benutzerattributen.
- Abrufen von Benutzerattributen.
Benutzerattribute festlegen und aktualisieren
Es wäre hilfreich für Targeting und/oder Personalisierung in der App, schnell zu erkennen, ob ein Benutzer in der Vergangenheit oder vor Kurzem einen Kauf getätigt hat. Legen wir das in der Luma-App fest.
-
Navigieren Sie im Xcode Project-Navigator zu Luma > Luma > Utils > MobileSDK und suchen Sie die Funktion
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:
-
Richtet ein leeres Wörterbuch mit dem Namen
profileMap
ein. -
Fügt ein Element zum Wörterbuch mit
attributeName
(z. B.isPaidUser
) undattributeValue
(z. B.yes
) hinzu. -
Verwendet das Wörterbuch
profileMap
als Wert für den ParameterattributeDict
des API-AufrufsUserProfile.updateUserAttributes
.
-
-
Navigieren Sie im Xcode Project-Navigator zu Luma > Luma > Views > Products > ProductView und suchen Sie den Aufruf zu
updateUserAttributes
(innerhalb des Codes für die Käufe). Schaltfläche {width="15"} ). Fügen Sie den folgenden Code hinzu:code language-swift // Update attributes MobileSDK.shared.updateUserAttribute(attributeName: "isPaidUser", attributeValue: "yes")
Abrufen von Benutzerattributen
Nachdem Sie das -Attribut eines Benutzers aktualisiert haben, ist es für andere Adobe-SDKs verfügbar, Sie können aber auch Attribute explizit abrufen, damit sich Ihre App wie gewünscht verhält.
-
Navigieren Sie im Xcode Project-Navigator zu Luma > Luma > Views > General > HomeView und suchen Sie den Modifikator
.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:
- Ruft die
UserProfile.getUserAttributes
-API mit dem AttributnamenisPaidUser
als einzelnes Element im ArrayattributeNames
auf. - Prüft dann den Wert des
isPaidUser
-Attributs und platziert beimyes
ein Zeichen auf der {width="20"} in der Symbolleiste oben rechts.
- Ruft die
Zusätzliche Dokumentation finden Sie hier.
Mit Assurance validieren
-
Lesen Sie den Abschnitt Setup instructions , um Ihren Simulator oder Ihr Gerät mit Assurance zu verbinden.
-
Führen Sie die App aus, um sich anzumelden und mit einem Produkt zu interagieren.
-
Verschieben Sie das Symbol "Versicherung"nach links.
-
Wählen Sie in der Registerkartenleiste Home aus.
-
Um das Anmeldeblatt zu öffnen, wählen Sie die Schaltfläche {width="15"}.
{width="300"}
-
Um eine zufällige E-Mail- und Kunden-ID einzufügen, wählen Sie die Schaltfläche {width="15"} .
-
Wählen Sie Anmelden aus.
{width="300"}
-
Wählen Sie in der Registerkartenleiste Products aus.
-
Wählen Sie ein Produkt aus.
-
Auswählen {width="15"}.
-
Auswählen {width="20"}.
-
Auswählen {width="15"}.
{width="300"}
-
Kehren Sie zurück zum Bildschirm Home zurück. Sie sollten sehen, dass ein Badge hinzugefügt wurde {width="15"}.
{width="300"}
-
-
In der Assurance-Benutzeroberfläche sollten die Ereignisse UserProfileUpdate und getUserAttributes mit dem aktualisierten Wert
profileMap
angezeigt werden.
Weiter: Orte verwenden