En esta guía, se muestra cómo puedes agregar eventos a tu app nueva o preexistente, para lo cual debes integrar el SDK de Facebook y, luego, registrar estos eventos.
Se han realizado cambios en el SDK de Facebook para iOS. Te recomendamos actualizar el SDK de Facebook para iOS a la nueva versión. Consulta la sección "Consentimiento del dispositivo" para obtener más información acerca de este cambio.
Necesitarás lo siguiente:
Ve al panel de apps, haz clic en Mis apps y crea una nueva app si todavía no tienes una. Ve a Configuración > Aspectos básicos para visualizar el panel de detalles de la app con tu identificador de la app, tu clave secreta de la app y otra información acerca de tu app.
Desplázate hasta la parte inferior de la página y haz clic en Agregar plataforma. Elige iOS, agrega los detalles de tu app y guarda los cambios.
Configura la app para que admita publicidad incorporando la siguiente información:
Para obtener más información sobre cómo agregar detalles a tu app (por ejemplo, un ícono o una categoría), visita la documentación sobre el desarrollo de apps.
Para poner anuncios en circulación y medir las instalaciones en el administrador de anuncios, asocia al menos una cuenta publicitaria y un portfolio comercial a tu app.
El siguiente procedimiento utiliza el administrador de paquetes de Swift para configurar el entorno de desarrollo en Xcode.
Agrega tu identificador del paquete y activa el inicio de sesión único de tu app.
Inicio de sesión único Se iniciará desde las notificaciones de iOS |
Info.plist
con un fragmento de XML que contiene datos sobre tu app. After you integrate Facebook Login, certain App Events are automatically logged and collected for Events Manager, unless you disable Automatic App Event Logging. In particular, when launching an app in Korea, please note that Automatic App Event Logging can be disabled. For details about what information is collected and how to disable automatic app event logging, see Automatic App Event Logging.
info.plist
y elige Open As ▸ Source Code. <dict>...</dict>
). <array><string>
de la clave [CFBundleURLSchemes]
, reemplaza [APP-ID] con el identificador de la app.<string>
de la clave FacebookAppID
, reemplaza [APP-ID] con el identificador de la app.<string>
de la clave FacebookClientToken
, reemplaza CLIENT-TOKEN con el valor encontrado en Configuración > Avanzado > Token del cliente del panel de apps.<string>
de la clave FacebookDisplayName
, reemplaza [APP-NAME] por el nombre de la app.Info.plist
de tu solicitud también debe incluir la siguiente información: Es posible configurar directamente la recopilación automática de eventos de la app en "verdadero" o "falso" si se agrega FacebookAutoLogAppEventsEnabled
como clave en Info.plist
.
AppDelegate.swift
con el siguiente código. Este código inicializa el SDK cuando se inicia tu app y permite al SDK administrar inicios de sesión y compartir contenido desde la app nativa de Facebook cuando inicias sesión o compartes algo. De lo contrario, el usuario debe iniciar sesión en Facebook a fin de usar el navegador de la app para iniciar sesión. // AppDelegate.swift import UIKit import FacebookCore @UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate { func application( _ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? ) -> Bool { ApplicationDelegate.shared.application( application, didFinishLaunchingWithOptions: launchOptions ) return true } func application( _ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey : Any] = [:] ) -> Bool { ApplicationDelegate.shared.application( app, open: url, sourceApplication: options[UIApplication.OpenURLOptionsKey.sourceApplication] as? String, annotation: options[UIApplication.OpenURLOptionsKey.annotation] ) } }
SceneDelegate
. Si usas iOS 13, agrega el siguiente método a SceneDelegate
para que las operaciones como el inicio de sesión o el uso compartido funcionen según lo previsto: // SceneDelegate.swift import FacebookCore ... func scene(_ scene: UIScene, openURLContexts URLContexts: Set<UIOpenURLContext>) { guard let url = URLContexts.first?.url else { return } ApplicationDelegate.shared.application( UIApplication.shared, open: url, sourceApplication: nil, annotation: [UIApplication.OpenURLOptionsKey.annotation] ) }
Hay tres maneras de hacer seguimiento de los eventos en tu app:
Es posible que los eventos que tu app recopila y envía a Facebook requieran que divulgues esos tipos de datos en el cuestionario de App Store Connect. Es tu responsabilidad asegurarte de que esto se vea reflejado en la Política de privacidad de tu app. Visita el artículo Detalles de privacidad de la App Store de Apple para obtener información sobre los tipos de datos que tendrás que divulgar.
Cuando usas el SDK de Facebook, determinados eventos de tu app se registran y recopilan automáticamente en el administrador de eventos de Facebook, a menos que desactives el registro automático de eventos. Estos eventos son relevantes en todos los casos de uso: segmentación, medición y optimización.
Hay tres eventos clave que se recopilan como parte del registro automático de estos eventos: descarga de la app, inicio de la app y compra. Cuando el registro automático está activado, los anunciantes pueden desactivar estos eventos y otros eventos internos de Facebook, como los eventos de impresión de inicio de sesión. Sin embargo, si desactivaste el registro automático, pero quieres registrar eventos concretos (por ejemplo, eventos de instalación o de compra), debes implementar manualmente el registro de estos eventos en tu app.
Evento | Detalles |
---|---|
Instalación de la app | La primera vez que un usuario nuevo activa una app o que inicia una app en un dispositivo particular. |
Inicio de la app | Cuando una persona inicia tu app, el SDK de Facebook se inicializa y se registra el evento. Sin embargo, si ocurre un segundo inicio de la app dentro de los 60 segundos del primero, no se registrará el segundo evento. |
Compras en la app | Cuando se completó una compra procesada por Google Play o la App Store de Apple. Si usas otras plataformas de pago, tendrás que agregar manualmente el código del evento de compra. |
Informe de bloqueo del SDK de Facebook (para uso exclusivo de Facebook) | Si tu app se bloqueó a causa del SDK de Facebook, se generará un informe de bloqueo, el cual se enviará a Facebook al reiniciar la app. Este informe no incluye datos del usuario y ayuda a Facebook a garantizar la calidad y estabilidad del SDK. Para excluir el registro de este evento, desactiva los eventos registrados de forma automática. |
A partir de iOS 14.5, tendrás que configurar AdvertiserTrackingEnabled
y registrar cada vez que le des permiso a un dispositivo para compartir datos con Facebook.
Si el dispositivo proporciona consentimiento, configura Settings.shared.isAdvertiserTrackingEnabled = true
.
Si el dispositivo no permite seguimiento, configura Settings.shared.isAdvertiserTrackingEnabled = false
.
Para desactivar el registro automático de eventos, abre el .plist
de la app como código en Xcode y agrega el siguiente XML al diccionario de propiedades:
<key>FacebookAutoLogAppEventsEnabled</key> <false/>
Es posible que, en algunos casos, prefieras demorar la recopilación de eventos registrados automáticamente en lugar de desactivarla (por ejemplo, para obtener el consentimiento del usuario o para cumplir con obligaciones legales). En este caso, configura Settings.shared.isAutoLogAppEventsEnabled = true
para volver a activar el registro automático después de que el usuario final proporcionó su consentimiento.
Para volver a desactivar la recopilación, independientemente del motivo, configura Settings.shared.isAutoLogAppEventsEnabled = false
.
También puedes desactivar el registro automático de eventos de compra en la app utilizando el panel de apps. Ve a la tarjeta para iOS en Básico>Configuración y cambia el interruptor a No.
Para desactivar la recopilación de advertiser-id
, abre .plist
de la app como código en Xcode y agrega el siguiente XML al diccionario de propiedades:
<key>FacebookAdvertiserIDCollectionEnabled</key> <false/>
Es posible que, en algunos casos, prefieras demorar la recopilación de advertiser_id
en lugar de desactivarla (por ejemplo, para obtener el consentimiento del usuario o para cumplir con obligaciones legales). En este caso, configura Settings.shared.isAutoLogAppEventsEnabled = true
después de que el usuario final haya proporcionado su consentimiento.
Para desactivar la recopilación, independientemente del motivo, configura Settings.shared.isAdvertiserIDCollectionEnabled = false
.
Para registrar un evento personalizado, pasa el nombre del evento como AppEvents.Name
.
AppEvents.shared.logEvent(AppEvents.Name("battledAnOrc"))
Facebook creó un conjunto de parámetros de eventos útiles para incluirlos con eventos estándar o con tus eventos personalizados. Asimismo, puedes usar tus propios parámetros.
Estos parámetros predefinidos ofrecen información orientativa acerca de los patrones de registro comunes, y pueden tener un formato más legible en los informes y otras interfaces de usuario. Registra el conjunto de parámetros cuyos desgloses quieras ver. La descripción recomendada es únicamente orientativa. Puedes los parámetros para cualquier aspecto que sea relevante en tu app.
Los parámetros pasan por un diccionario en el que la clave mantiene el nombre del parámetro como AppEvents.ParameterName
y el valor debe ser String
o un número (Int
, Double
, etc.).
Con el asistente para anuncios sobre apps, puedes probar los eventos de la app a fin de asegurarte de que tu app envíe eventos a Facebook.
Si tienes planeado realizar un seguimiento de los eventos en las campañas de SKAdNetwork u optimizarlos, también deberás configurar adecuadamente la prioridad del evento (también conocida como valor de conversión) para que Facebook reciba de manera correcta las conversiones. Para obtener información más detallada, consulta aquí.
Creamos algunos ejemplos de distintos tipos de apps para que te resulte más fácil ver cómo puedes usar eventos de la app. Las apps de ejemplo ofrecen un desglose por pantallas de los diferentes eventos y parámetros que se pueden recopilar. Al final de cada sección hay una tabla en la que se enumeran los eventos y los parámetros recomendados para cada app. Además, si es necesario, puedes crear tus propios eventos y parámetros.