Usar lugares
Aprenda a utilizar el servicio de geolocalización de Places en su aplicación.
El servicio de lugares de recopilación de datos de Adobe Experience Platform es un servicio de geolocalización que permite a las aplicaciones móviles con conocimiento de ubicación comprender el contexto de la ubicación. El servicio utiliza interfaces de SDK enriquecidas y fáciles de usar, acompañadas de una base de datos flexible de puntos de interés (POI).
Requisitos previos
- Todas las dependencias del paquete se establecen en el proyecto Xcode.
- Extensiones registradas en AppDelegate.
- MobileCore configurado para utilizar su appId de desarrollo.
- SDK importados.
- La aplicación se creó y ejecutó correctamente con los cambios anteriores.
Objetivos de aprendizaje
En esta lección, debe
- Obtenga información sobre cómo definir puntos de interés en el servicio Places.
- Actualice la propiedad de etiqueta con la extensión Places.
- Actualice el esquema para capturar los eventos de geolocalización.
- Valide la configuración en Assurance.
- Actualice la aplicación para registrar la extensión Places.
- Implemente el seguimiento de geolocalización desde el servicio Places en la aplicación.
Configuración
Para que el servicio Places funcione en la aplicación y en el SDK móvil, debe realizar alguna configuración.
Definir lugares
Puede definir algunos puntos de interés en el servicio Places.
- En la IU de recopilación de datos, seleccione Places.
- Seleccione .
- En el menú contextual, seleccione Administrar bibliotecas.
- En el diálogo Administrar bibliotecas, seleccione Nuevo.
- En el cuadro de diálogo Crear biblioteca, escriba un Nombre, por ejemplo
Luma
. - Seleccione Confirmar.
- Para cerrar el cuadro de diálogo Administrar bibliotecas, seleccione Cerrar.
- De nuevo en Administración de puntos de interés, seleccione Importar puntos de interés.
- Seleccione Iniciar en el cuadro de diálogo Importar lugares.
- Seleccione Luma de la lista de bibliotecas,
- Seleccione Siguiente.
- Descargue el archivo ZIP de puntos de interés de Luma y extráigalo en una ubicación de su equipo.
- En el cuadro de diálogo Importar lugares, arrastre y suelte el archivo
luma_pois.csv
extraído en Elegir archivo CSV - Arrastrar y soltar el archivo. Debería ver Validación realizada correctamente - Validado correctamente el archivo CSV. - Seleccione Comenzar importación. Debería ver Éxito - Se agregaron correctamente 6 POI nuevos.
- Seleccione Listo.
- En Administración de puntos de interés, debería ver que se agregan seis nuevas tiendas Luma a la lista. Puede alternar entre la lista
y la vista de mapa
.
.
Instalar extensión Places
-
Vaya a Etiquetas, busque la propiedad de etiquetas móviles y ábrala.
-
Seleccione Extensiones.
-
Seleccione Catálogo.
-
Busque la extensión Places.
-
Instale la extensión de.
-
En el diálogo Instalar extensión:
-
Seleccione Luma de la lista Seleccionar una biblioteca.
-
Asegúrese de haber seleccionado su biblioteca de trabajo, por ejemplo Versión inicial.
-
Seleccione Guardar en biblioteca y compilar de Guardar en biblioteca.
.
-
-
Se volverá a crear su biblioteca.
Verificar el esquema
Compruebe si el esquema, tal como se define en Crear esquema, incorpora los grupos de campos y las clases necesarios para recopilar los datos de puntos de interés y la geolocalización.
- Vaya a la interfaz de recopilación de datos y seleccione Esquemas en el carril izquierdo.
- Seleccione Examinar en la barra superior.
- Seleccione el esquema para abrirlo.
- En el editor de esquemas, seleccione Evento de experiencia del consumidor.
- Verá un objeto placeContext con objeto y campos para capturar la interacción de puntos de interés y los datos de geolocalización.
.
Actualizar la propiedad de etiquetas
La extensión Places para etiquetas proporciona funcionalidad para supervisar eventos de geolocalización y permite almacenar en déclencheur acciones basadas en estos eventos. Puede utilizar esta funcionalidad para minimizar la codificación de la API que debe implementar en la aplicación.
Elementos de datos
Primero se crean varios elementos de datos.
-
Vaya a la propiedad de etiquetas en la interfaz de usuario de la recopilación de datos.
-
Seleccione Elementos de datos en el carril izquierdo.
-
Seleccione Agregar elemento de datos.
-
En la pantalla Crear elemento de datos, escriba un nombre, por ejemplo
Name - Entered
. -
Seleccione Places de la lista Extension.
-
Seleccione Name de la lista Tipo de elemento de datos.
-
Seleccione el punto de interés actual debajo de TARGET.
-
Seleccione Guardar en biblioteca.
-
Repita los pasos 4-8 utilizando la información de la tabla siguiente para crear elementos de datos adicionales.
table 0-row-4 1-row-4 2-row-4 3-row-4 4-row-4 5-row-4 Nombre Extensión Tipo de elemento de datos DESTINO Name - Exited
Places Nombre Último PDI saliente Category - Current
Places Categoría Punto de interés actual Category - Exited
Places Categoría Último PDI saliente City - Current
Places Ciudad Punto de interés actual City - Exited
Places Ciudad Último PDI saliente Debe tener la siguiente lista de elementos de datos.
Reglas
A continuación, va a definir reglas para trabajar con estos elementos de datos.
-
En su propiedad de etiquetas, seleccione Reglas en el carril izquierdo.
-
Seleccione Agregar regla.
-
En la pantalla Crear regla, escriba un nombre para la regla, por ejemplo
POI - Entry
. -
Seleccione debajo de EVENTOS.
-
Seleccione Places de la lista Extension y seleccione Enter POI de la lista Event Type.
-
Seleccione Conservar cambios.
.
-
-
Seleccione debajo de ACCIONES.
-
Seleccione Mobile Core de la lista Extension, seleccione Adjuntar datos de Tipo de acción en la lista. Esta acción adjunta datos de carga útil.
-
En la carga útil JSON, pegue la siguiente carga útil:
code language-json { "xdm": { "eventType": "location.entry", "placeContext": { "geo": { "city": "{%%City - Current%%}" }, "POIinteraction": { "poiDetail": { "name": "{%%Name - Current%%}", "category": "{%%Category - Current%%}" }, "poiEntries": { "value": 1 } } } } }
También puede insertar
{%% ... %%}
valores de marcador de posición de elementos de datos en el JSON al seleccionar . Un cuadro de diálogo emergente le permite elegir cualquier elemento de datos que haya creado. -
Seleccione Conservar cambios.
-
-
Seleccione junto a la acción Núcleo móvil: adjuntar datos.
- Seleccione Edge Network de Adobe Experience Platform de la lista Extension y seleccione Reenviar evento al Edge Network. Esta acción garantiza que el evento y los datos de carga útil adicionales se reenvíen al Edge Network de Platform.
- Seleccione Conservar cambios.
-
Para guardar la regla, seleccione Guardar en biblioteca.
Vamos a crear otra regla
-
En la pantalla Crear regla, escriba un nombre para la regla, por ejemplo
POI - Exit
. -
Seleccione debajo de EVENTOS.
- Seleccione Places de la lista Extension y seleccione Exit POI de la lista Event Type.
- Seleccione Conservar cambios.
-
Seleccione debajo de ACCIONES.
-
Seleccione Mobile Core de la lista Extension, seleccione Adjuntar datos de la lista Tipo de acción.
-
En la carga útil JSON, pegue la siguiente carga útil:
code language-json { "xdm": { "eventType": "location.exit", "placeContext": { "geo": { "city": "{%%City - Exited%%}" }, "POIinteraction": { "poiExits": { "value": 1 }, "poiDetail": { "name": "{%%Name - Exited%%}", "category": "{%%Category - Exited%%}" } } } } }
-
Seleccione Conservar cambios.
-
-
Seleccione junto a la acción Núcleo móvil: adjuntar datos.
- Seleccione Edge Network de Adobe Experience Platform de la lista Extension y seleccione Reenviar evento al Edge Network.
- Seleccione Conservar cambios.
-
Para guardar la regla, seleccione Guardar en biblioteca.
Para asegurarse de que se publican todos los cambios en la etiqueta
- Seleccione Versión inicial como la biblioteca que generar.
- Seleccione Generar.
Validar la configuración en Assurance
Para validar la configuración en Assurance:
- Vaya a la interfaz de usuario de Assurance.
- Si no está disponible en el carril izquierdo, seleccione Configurar en el carril izquierdo y seleccione junto a Eventos y Asignar y simular debajo de SERVICIO DE LUGARES.
- Seleccione Guardar.
- Seleccione Asignar y simular en el carril izquierdo.
- Mueva el mapa a una ubicación de uno de sus puntos de interés.
- Seleccione para simular puntos de interés de carga. Su punto de interés se identifica con un círculo y un alfiler.
- Seleccione su punto de interés.
- En la ventana emergente, seleccione
Simular evento de entrada.
- Seleccione Eventos en el carril izquierdo y debería ver los eventos que ha simulado.
Implementar Places en la aplicación
Como se ha explicado en lecciones anteriores, la instalación de una extensión de etiqueta móvil solo proporciona la configuración. A continuación, debe instalar y registrar el SDK de Places. Si estos pasos no están claros, revise la sección Instalar SDK.
-
En Xcode, asegúrese de que AEP Places se agregue a la lista de paquetes en Dependencias del paquete. Consulte Administrador De Paquetes Swift.
-
Vaya a Luma > Luma > AppDelegate en el navegador del proyecto Xcode.
-
Asegúrese de que
AEPPlaces
forme parte de su lista de importaciones.code language-swift import AEPPlaces
-
Asegúrese de que
Places.self
forme parte de la matriz de extensiones que está registrando.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 ]
-
Vaya a Luma > Luma > Utils > MobileSDK en el navegador del proyecto Xcode y busque la función
func processRegionEvent(regionEvent: PlacesRegionEvent, forRegion region: CLRegion) async
. Añada el siguiente código:code language-swift // Process geolocation event Places.processRegionEvent(regionEvent, forRegion: region)
Esta API
Places.processRegionEvent
comunica la información de geolocalización al servicio Places. -
Vaya a Luma > Luma > Views > Location > GeofenceSheet en el navegador de proyectos de Xcode.
- Para el botón Entry, introduzca el siguiente código
code language-swift // Simulate geofence entry event Task { await MobileSDK.shared.processRegionEvent(regionEvent: .entry, forRegion: region) }
- Para el botón Exit (Salir), introduzca el siguiente código
code language-swift // Simulate geofence exit event Task { await MobileSDK.shared.processRegionEvent(regionEvent: .exit, forRegion: region) }
Validar con la aplicación
-
Abra la aplicación en un dispositivo o en el simulador.
-
Vaya a la ficha Ubicación.
-
Mueva (arrastre) el mapa para asegurarse de que el círculo central azul esté encima de uno de sus puntos de interés, por ejemplo Londres.
-
Tocar {width="20"} hasta que vea que la categoría y el nombre aparecen en la etiqueta en la ubicación roja con el pin.
-
Pulse la etiqueta del punto de interés (POI), que abre la hoja Punto de interés cercano.
{width="300"}
-
Pulse los botones Entrada o Salida para simular los eventos de entrada y salida de geovalla desde la aplicación.
{width="300"}
-
Debería ver los eventos en la interfaz de usuario de Assurance.
Pasos siguientes
Ahora debe tener todas las herramientas para empezar a añadir más funcionalidades a la funcionalidad de geolocalización en la aplicación. A medida que reenvíe los eventos al Edge Network, una vez que haya configurado la aplicación para Experience Platform, debería ver los eventos de experiencia que aparecen para el perfil que se usa en la aplicación.
En la sección Journey Optimizer de este tutorial, verá que los eventos de experiencia se pueden usar para almacenar en déclencheur los recorridos (consulte notificaciones push y mensajería en la aplicación con Journey Optimizer). Por ejemplo, el ejemplo habitual de enviar a un usuario de la aplicación una notificación push con alguna promoción de producto cuando ese usuario entra en la geovalla de una tienda física.
Ha visto una implementación de la funcionalidad de su aplicación, impulsada principalmente por el servicio Places y los elementos de datos y reglas que definió en la propiedad de etiquetas. Como tal, minimice el código en la aplicación. Como alternativa, puede implementar la misma funcionalidad directamente en la aplicación mediante la API Edge.sendEvent
(consulte Eventos para obtener más información) con una carga XDM que contenga un objeto placeContext
rellenado.
Siguiente: Asignar datos a Adobe Analytics