Utilisation des emplacements
Découvrez comment utiliser le service de géolocalisation Places dans votre application.
Le service Places de collecte de données Adobe Experience Platform est un service de géolocalisation qui permet aux applications mobiles de comprendre le contexte de l’emplacement grâce à la connaissance de l’emplacement. Le service utilise des interfaces SDK riches et faciles à utiliser, accompagnées d’une base de données flexible de points ciblés (POI).
Conditions préalables
- Toutes les dépendances de package sont en place dans le projet Xcode.
- Extensions enregistrées dans AppDelegate.
- MobileCore configuré pour utiliser votre appId de développement.
- SDK importés.
- L’application a été créée et exécutée avec les modifications ci-dessus.
Objectifs d’apprentissage
Dans cette leçon, vous allez :
- Découvrez comment définir les points d’intérêt dans le service Places.
- Mettez à jour la propriété de balise avec l’extension Places.
- Mettez à jour votre schéma pour capturer les événements de géolocalisation.
- Validez la configuration dans Assurance.
- Mettez à jour votre application pour enregistrer l’extension Places.
- Implémentez le suivi de la géolocalisation à partir du service Places dans votre application.
Configuration
Pour que le service Places fonctionne dans votre application et dans Mobile SDK, vous devez effectuer une configuration.
Définir les emplacements
Vous définissez certains points d’intérêt dans le service Places.
-
Dans l’interface utilisateur de collecte de données, sélectionnez Emplacements.
-
Sélectionnez
-
Dans le menu contextuel, sélectionnez Gérer les bibliothèques.
-
Dans la boîte de dialogue Gérer les bibliothèques, sélectionnez Nouveau.
-
Dans la boîte de dialogue Créer une bibliothèque saisissez un Nom, par exemple
Luma
. -
Sélectionnez Confirmer.
-
Pour fermer la boîte de dialogue Gérer les bibliothèques, sélectionnez Fermer.
-
De retour dans Gestion des POI, sélectionnez Importer des POI.
-
Sélectionnez Démarrer dans la boîte de dialogue Importer des emplacements.
-
Sélectionnez Luma dans la liste des bibliothèques,
-
Sélectionnez Suivant.
-
Téléchargez le fichier ZIP des points d’intérêt Luma et extrayez-le à un emplacement de votre ordinateur.
-
Dans la boîte de dialogue Importer des emplacements, faites glisser et déposez le fichier
luma_pois.csv
extrait sur Choisir un fichier CSV - Faites glisser et déposez votre fichier. Vous devriez voir Succès de la validation - Le fichier CSV a été validé avec succès. -
Sélectionnez Démarrer l’importation. Vous devriez voir Succès - 6 nouveaux points d’intérêt ajoutés avec succès.
-
Sélectionnez Terminé.
-
Dans Gestion des points d’intérêt, vous devriez voir que six nouveaux magasins Luma sont ajoutés à la liste. Vous pouvez basculer entre la vue de carte
.
Installer l’extension Places
-
Accédez à Balises recherchez la propriété de balise mobile et ouvrez la propriété.
-
Sélectionnez Extensions.
-
Sélectionnez Catalogue.
-
Recherchez l’extension Places.
-
Installez l’extension .
-
Dans la boîte de dialogue Installer l’extension :
-
Sélectionnez Luma dans la liste Sélectionner une bibliothèque.
-
Assurez-vous d’avoir choisi votre bibliothèque de travail, par exemple Version initiale.
-
Sélectionnez Enregistrer dans la bibliothèque et créer dans Enregistrer dans la bibliothèque.
.
-
-
Votre bibliothèque est reconstruite.
Vérification du schéma
Vérifiez si votre schéma, tel que défini dans Créer un schéma, incorpore les groupes et classes de champs nécessaires pour collecter les données de point d’intérêt et de géolocalisation.
-
Accédez à l’interface de collecte de données et sélectionnez Schémas dans le rail de gauche.
-
Sélectionnez Parcourir dans la barre supérieure.
-
Sélectionnez votre schéma pour l’ouvrir.
-
Dans l’éditeur de schémas, sélectionnez Événement d’expérience client.
-
Un objet placeContext contenant l’objet et les champs permettant de capturer les données d’interaction avec le point d’intérêt et de géolocalisation s’affiche.
.
Mettre à jour la propriété de balise
L’extension Places pour les balises offre la fonctionnalité de surveillance des événements de géolocalisation et vous permet de déclencher des actions en fonction de ces événements. Vous pouvez utiliser cette fonctionnalité pour minimiser le codage d’API que vous devez implémenter dans l’application.
Éléments de données
Vous devez d’abord créer plusieurs éléments de données.
-
Accédez à la propriété de balise dans l’interface utilisateur de collecte de données.
-
Sélectionnez Éléments de données dans le rail de gauche.
-
Sélectionnez Ajouter un élément de données.
-
Dans l’écran Créer un élément de données, saisissez un nom, par exemple
Name - Entered
. -
Sélectionnez Places dans la liste Extension.
-
Sélectionnez Nom dans la liste Type d’élément de données.
-
Sélectionnez POI actuel sous TARGET.
-
Sélectionnez Enregistrer dans la bibliothèque.
-
Répétez les étapes 4 à 8 à l’aide des informations du tableau ci-dessous, pour créer des éléments de données supplémentaires.
table 0-row-4 1-row-4 2-row-4 3-row-4 4-row-4 5-row-4 Nom Extension Type d’élément de données CIBLE Name - Exited
Places Nom Dernier POI quitté Category - Current
Places Catégorie Point ciblé actuel Category - Exited
Places Catégorie Dernier POI quitté City - Current
Places Ville Point ciblé actuel City - Exited
Places Ville Dernier POI quitté Vous devriez disposer de la liste suivante d’éléments de données.
Règles
Vous allez maintenant définir des règles pour travailler avec ces éléments de données.
-
Dans la propriété de balise, sélectionnez Règles dans le rail de gauche.
-
Sélectionnez Ajouter une règle.
-
Dans l’écran Créer une règle, saisissez le nom de la règle, par exemple
POI - Entry
. -
Sélectionnez
- Sélectionnez Places dans la liste Extension et sélectionnez Saisir un point d’intérêt dans la liste Type d’événement.
- Sélectionnez Conserver les modifications.
-
Sélectionnez
-
Sélectionnez Mobile Core dans la liste Extension, sélectionnez Joindre les données dans Type d’action. Cette action joint des données de payload.
-
Dans la Payload JSON, collez la payload suivante :
code language-json { "xdm": { "eventType": "location.entry", "placeContext": { "geo": { "city": "{%%City - Current%%}" }, "POIinteraction": { "poiDetail": { "name": "{%%Name - Current%%}", "category": "{%%Category - Current%%}" }, "poiEntries": { "value": 1 } } } } }
Vous pouvez également insérer
{%% ... %%}
valeurs d’espace réservé d’élément de données dans le fichier JSON en sélectionnant le -
Sélectionnez Conserver les modifications.
-
-
Sélectionnez
- Sélectionnez Adobe Experience Platform Edge Network dans la liste Extension et sélectionnez Transférer l’événement vers Edge Network. Cette action garantit que l’événement et les données de payload supplémentaires sont transférés vers Platform Edge Network.
- Sélectionnez Conserver les modifications.
-
Pour enregistrer la règle, sélectionnez Enregistrer dans la bibliothèque.
Créons une autre règle
-
Dans l’écran Créer une règle, saisissez le nom de la règle, par exemple
POI - Exit
. -
Sélectionnez
- Sélectionnez Places dans la liste Extension, puis sélectionnez Quitter le POI dans la liste Type d’événement.
- Sélectionnez Conserver les modifications.
-
Sélectionnez
-
Sélectionnez Mobile Core dans la liste Extension, sélectionnez Joindre les données dans la liste Type d’action.
-
Dans la Payload JSON, collez la payload suivante :
code language-json { "xdm": { "eventType": "location.exit", "placeContext": { "geo": { "city": "{%%City - Exited%%}" }, "POIinteraction": { "poiExits": { "value": 1 }, "poiDetail": { "name": "{%%Name - Exited%%}", "category": "{%%Category - Exited%%}" } } } } }
-
Sélectionnez Conserver les modifications.
-
-
Sélectionnez
- Sélectionnez Adobe Experience Platform Edge Network dans la liste Extension et sélectionnez Transférer l’événement vers Edge Network.
- Sélectionnez Conserver les modifications.
-
Pour enregistrer la règle, sélectionnez Enregistrer dans la bibliothèque.
Pour vous assurer que toutes les modifications apportées à votre balise sont publiées :
-
Sélectionnez Version initiale comme bibliothèque à créer.
-
Sélectionnez Créer.
Validation de la configuration dans Assurance
Pour valider votre configuration dans Assurance :
-
Accédez à l’interface utilisateur d’Assurance.
-
S’il n’est pas déjà disponible dans le rail de gauche, sélectionnez Configurer dans le rail de gauche et sélectionnez
-
Sélectionnez Enregistrer.
-
Sélectionnez Mapper et simuler dans le rail de gauche.
-
Déplacez la carte vers un emplacement de l’un de vos points d’intérêt.
-
Sélectionnez
-
Sélectionnez votre point d’intérêt.
-
Dans la fenêtre contextuelle, sélectionnez
-
Sélectionnez Événements dans le rail de gauche pour afficher les événements que vous avez simulés.
Implémentation de Places dans votre application
Comme nous l’avons vu dans les leçons précédentes, l’installation d’une extension de balise mobile fournit uniquement la configuration . Vous devez ensuite installer et enregistrer Places SDK. Si ces étapes ne sont pas claires, consultez la section Installation des SDK.
-
Dans Xcode, assurez-vous que AEP Places est ajouté à la liste des packages dans les dépendances de packages. Voir Gestionnaire de packages Swift.
-
Accédez à Luma > Luma > AppDelegate dans le navigateur de projet Xcode.
-
Assurez-vous que
AEPPlaces
fait partie de votre liste d’importations.code language-swift import AEPPlaces
-
Assurez-vous que
Places.self
fait partie du tableau d’extensions que vous enregistrez.code language-swift let extensions = [ AEPIdentity.Identity.self, Lifecycle.self, Signal.self, Edge.self, AEPEdgeIdentity.Identity.self, Consent.self, UserProfile.self, Places.self, Messaging.self, Optimize.self, Assurance.self ]
-
Accédez à Luma > Luma > Utils > MobileSDK dans le navigateur de projet Xcode et recherchez la fonction
func processRegionEvent(regionEvent: PlacesRegionEvent, forRegion region: CLRegion) async
. Ajoutez le code suivant :code language-swift // Process geolocation event Places.processRegionEvent(regionEvent, forRegion: region)
Cette API
Places.processRegionEvent
communique les informations de géolocalisation au service Places. -
Accédez à Luma > Luma > Views > Location > GeofenceSheet dans le navigateur de projet de Xcode.
-
Pour le bouton Entrée , saisissez le code suivant :
code language-swift // Simulate geofence entry event Task { await MobileSDK.shared.processRegionEvent(regionEvent: .entry, forRegion: region) }
-
Pour le bouton Quitter , saisissez le code suivant :
code language-swift // Simulate geofence exit event Task { await MobileSDK.shared.processRegionEvent(regionEvent: .exit, forRegion: region) }
-
-
Dans Android Studio, assurez-vous que aepsdk-places-android fait partie des dépendances dans build.gradle.kts (module :app) dans Android
-
Accédez à Android
-
Assurez-vous que
com.adobe.marketing.mobile.Messaging
fait partie de votre liste d’importations.import import com.adobe.marketing.mobile.Places
-
Assurez-vous que
Places.EXTENSION
fait partie du tableau d’extensions que vous enregistrez.code language-kotlin val extensions = listOf( Identity.EXTENSION, Lifecycle.EXTENSION, Signal.EXTENSION, Edge.EXTENSION, Consent.EXTENSION, UserProfile.EXTENSION, Places.EXTENSION, Messaging.EXTENSION, Optimize.EXTENSION, Assurance.EXTENSION )
-
Accédez à Android
suspend fun processGeofence(geofence: Geofence?, transitionType: Int)
. Ajoutez le code suivant :code language-kotlin // Process geolocation event Places.processGeofence(geofence, transitionType)
Cette API
Places.processRegionEvent
communique les informations de géolocalisation au service Places. -
Accédez à Android
-
Pour le bouton Entrée , saisissez le code suivant :
code language-kotlin // Simulate geofence entry event coroutineScope.launch { MobileSDK.shared.processGeofence( region, Geofence.GEOFENCE_TRANSITION_ENTER ) }
-
Pour le bouton Quitter , saisissez le code suivant :
code language-kotlin // Simulate geofence entry event coroutineScope.launch { MobileSDK.shared.processGeofence( region, Geofence.GEOFENCE_TRANSITION_EXIT ) }
-
Validation à l’aide de l’application
Pour valider les fonctionnalités de géolocalisation dans votre application :
-
Ouvrez votre application sur un appareil ou dans le simulateur.
-
Accédez à l’onglet Emplacement.
-
Déplacez (faites glisser) la carte pour vous assurer que le cercle bleu du milieu se trouve au-dessus de l’un de vos points d’intérêt, par exemple Londres.
-
Appuyer
-
Appuyez sur l’étiquette du point d’intérêt, ce qui ouvre la feuille Point d’intérêt voisin.
-
Appuyez sur les boutons Entrée ou Sortie pour simuler des événements d’entrée et de sortie de limite géographique à partir de l’application.
-
Vous devriez voir les événements dans l’interface utilisateur d’Assurance. À la fois dans les événements et dans les événements du service Places.
-
Accédez à l’onglet Emplacement.
-
Sélectionnez Utiliser et/ou simuler des limites géographiques.
-
Appuyez quelque part dans le cercle rouge qui s’affiche.
-
Appuyez sur les boutons Entrée ou Sortie pour simuler des événements d’entrée et de sortie de limite géographique à partir de l’application.
-
Vous devriez voir les événements dans l’interface utilisateur d’Assurance.
Étapes suivantes
Vous devriez maintenant disposer de tous les outils nécessaires pour commencer à ajouter d’autres fonctionnalités à votre fonctionnalité de géolocalisation dans l’application. Après avoir transféré les événements vers Edge Network, une fois que vous avez configuré l’application pour Experience Platform, les événements d’expérience doivent apparaître pour le profil utilisé dans l’application.
Dans la section Journey Optimizer de ce tutoriel, vous pouvez voir que les événements d’expérience peuvent être utilisés pour déclencher des parcours (voir notification push et messagerie in-app avec Journey Optimizer). Par exemple, l’exemple habituel d’envoi d’une notification push à l’utilisateur de votre application avec une promotion de produit lorsque cet utilisateur accède à la limite géographique d’un magasin physique.
Cette implémentation de la fonctionnalité de géolocalisation de votre application réduit le code. Le service Places, les éléments de données et les règles que vous avez définis dans la propriété de balise fournissent la plupart des fonctionnalités. Vous pouvez également implémenter la même fonctionnalité directement dans votre application à l’aide de l’API Edge.sendEvent
(voir Événements pour plus d’informations) avec une payload XDM contenant un objet placeContext
renseigné.
Suivant : Mapper des données à Adobe Analytics