Ir al contenido

Notificaciones push silenciosas

Aprende a configurar notificaciones push silenciosas para el SDK de Braze.

Requisitos previos

Antes de poder utilizar esta característica, tendrás que integrar el SDK de Braze para Android. También tendrás que configurar las notificaciones push.

Configuración de notificaciones push silenciosas

Las notificaciones silenciosas están disponibles a través de la API de mensajería de Braze. Para aprovecharlas, debes establecer el indicador send_to_sync en true dentro del objeto push de Android y asegurarte de que no haya campos title o alert configurados, ya que provocarán errores cuando se utilicen junto con send_to_sync—sin embargo, puedes incluir datos extras dentro del objeto.

Requisitos previos

Antes de poder utilizar esta característica, tendrás que integrar el SDK Swift de Braze. También tendrás que configurar las notificaciones push.

Limitaciones de iOS

El sistema operativo iOS puede restringir las notificaciones para algunas características. Ten en cuenta que, si tienes dificultades con estas características, la restricción de notificaciones silenciosas de iOS podría ser la causa. Para más detalles, consulta la documentación de Apple sobre métodos de instancia y notificaciones no recibidas.

Configuración de notificaciones push silenciosas

Para utilizar notificaciones push silenciosas que desencadenen trabajo en segundo plano, debes configurar tu aplicación para recibir notificaciones incluso cuando esté en segundo plano. Para ello, añade la capacidad Background Modes utilizando el panel Signing & Capabilities al objetivo principal de la aplicación en Xcode. Selecciona la casilla Remote notifications.

Xcode mostrando la casilla del modo "remote notifications" en "capabilities".

Incluso con el modo en segundo plano de notificaciones remotas habilitado, el sistema no lanzará tu aplicación en segundo plano si el usuario ha forzado el cierre de la aplicación. El usuario debe iniciar la aplicación de forma explícita o reiniciar el dispositivo antes de que el sistema pueda lanzarla automáticamente en segundo plano.

Para más información, consulta pushing background updates y la documentación de application:didReceiveRemoteNotification:fetchCompletionHandler:.

Envío de notificaciones push silenciosas

Para enviar una notificación push silenciosa, establece el indicador content-available en 1 en la carga útil de una notificación push.

El indicador content-available se puede establecer en el panel de Braze, así como dentro de nuestro objeto push de Apple en la API de mensajería.

El panel de Braze mostrando la casilla de verificación "content-available" en la pestaña "configuración" del creador de push.

Al enviar una notificación push silenciosa, también puedes incluir algunos datos en la carga útil de la notificación, para que tu aplicación pueda hacer referencia al evento. Esto podría ahorrarte algunas solicitudes de red y mejorar la capacidad de respuesta de tu aplicación.

Ignorar las notificaciones push internas

Braze utiliza notificaciones push silenciosas para gestionar internamente ciertas características avanzadas, como Uninstall Tracking. Si tu aplicación realiza acciones automáticas al iniciar la aplicación o con push en segundo plano, considera controlar esa actividad para que no se desencadene por ninguna notificación push interna.

Por ejemplo, si tienes una lógica que llama a tus servidores para obtener contenido nuevo con cada push en segundo plano o inicio de la aplicación, es posible que desees evitar que se desencadenen los push internos de Braze para evitar tráfico de red innecesario. Dado que Braze envía ciertos tipos de push internos a todos los usuarios aproximadamente al mismo tiempo, podría producirse una carga significativa en el servidor si las llamadas de red al iniciar desde push internos no están controladas.

Paso 1: Comprueba las acciones automáticas en tu aplicación

Comprueba las acciones automáticas en los siguientes lugares de tu aplicación y actualiza tu código para ignorar los push internos de Braze:

  1. Receptores de push. Las notificaciones push en segundo plano llamarán a application:didReceiveRemoteNotification:fetchCompletionHandler: en el UIApplicationDelegate.
  2. Delegado de la aplicación. Los push en segundo plano pueden iniciar aplicaciones suspendidas en segundo plano, desencadenando los métodos application:willFinishLaunchingWithOptions: y application:didFinishLaunchingWithOptions: en tu UIApplicationDelegate. Comprueba las launchOptions de estos métodos para determinar si la aplicación se ha iniciado desde un push en segundo plano.

Paso 2: Usa el método de utilidad de push interno

Puedes usar el método de utilidad estático en Braze.Notifications para comprobar si tu aplicación ha recibido o fue iniciada por un push interno de Braze. Braze.Notifications.isInternalNotification(_:) devuelve true para todas las notificaciones push internas de Braze, que incluyen Uninstall Tracking y las notificaciones de sincronización de conmutadores de características.

Por ejemplo:

func application(_ application: UIApplication,
                 didReceiveRemoteNotification userInfo: [AnyHashable : Any],
                 fetchCompletionHandler completionHandler: @escaping (UIBackgroundFetchResult) -> Void) {
  if (!Braze.Notifications.isInternalNotification(userInfo)) {
    // Gated logic here (for example pinging server for content)
  }
}
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult result))completionHandler {
  if (![BRZNotifications isInternalNotification:userInfo]) {
    // Gated logic here (for example pinging server for content)
  }
}

Requisitos previos

Antes de poder utilizar esta característica, tendrás que integrar el SDK de Braze para Android. También tendrás que configurar las notificaciones push.

Configuración de notificaciones push silenciosas

Las notificaciones silenciosas están disponibles a través de la API de mensajería de Braze. Para aprovecharlas, debes establecer el indicador send_to_sync en true dentro del objeto push de Android y asegurarte de que no haya campos title o alert configurados, ya que provocarán errores cuando se utilicen junto con send_to_sync—sin embargo, puedes incluir datos extras dentro del objeto.

New Stuff!