Contenido de notificación de la aplicación

En este artículo se describen los elementos de la interfaz de usuario que se pueden usar en una notificación de aplicación y se proporcionan ejemplos de código para generar el contenido de la notificación. Para obtener más información sobre las notificaciones de la aplicación, consulte Introducción a las notificaciones de aplicaciones. Para ver un tutorial sobre la implementación de notificaciones de aplicaciones, consulte Quickstart: Notificaciones de aplicación en el SDK de Aplicaciones para Windows.

Cómo empezar

Las notificaciones de aplicación se definen con una carga XML definida por el esquema de notificación de la aplicación. Actualmente, hay dos maneras de generar la carga XML para una notificación de aplicación. En los ejemplos de código de este artículo se muestran ambos métodos:

  • El Microsoft.Windows.AppNotifications.Builder API: introducida en SDK de Aplicaciones para Windows 1.2, este espacio de nombres proporciona una API que permite compilar fácilmente la carga XML para una notificación programáticamente sin preocuparse por los detalles del formato XML. Los ejemplos de código que usan estas API están en las pestañas con la etiqueta "SDK de Aplicaciones para Windows".
  • XML sin formato: si lo prefiere, puede crear su propio código personalizado para generar cadenas XML en el formato necesario. Los ejemplos XML sin formato se encuentran en las pestañas con la etiqueta "XML".

Instale el visualizador de notificaciones. Esta aplicación gratuita de Windows te ayuda a diseñar notificaciones interactivas, proporcionando una vista previa visual instantánea de tu toast mientras lo editas, similar al editor/vista de diseño de XAML de Visual Studio. Consulta el Visualizador de Notificaciones para obtener más información, o descargar el Visualizador de Notificaciones desde la Store.

En este artículo solo se explica cómo crear el contenido de la notificación de la aplicación. Para obtener información sobre el envío de una notificación, consulte Introducción a las notificaciones de la aplicación.

Estructura de notificaciones de aplicación

Algunos componentes importantes y generales de una carga XML de notificación de aplicación incluyen:

  • del sistema: el lanzamiento atributo de este elemento define qué argumentos se pasarán a la aplicación cuando el usuario haga clic en su notificación, lo que le permite realizar un enlace profundo al contenido correcto que mostraba la notificación. Para más información, consulte Introducción a las notificaciones de aplicaciones.
  • visual: este elemento representa la parte visual de la notificación del sistema, incluido el enlace genérico que contiene texto e imágenes.
  • acciones: este elemento representa la parte interactiva de la notificación del sistema, incluidas las entradas y acciones.
  • audio: este elemento especifica el audio reproducido cuando se muestra la notificación emergente al usuario.
var builder = new AppNotificationBuilder()
    .AddArgument("conversationId", "9813")

    .AddText("Some text")

    .AddButton(new AppNotificationButton("Archive")
        .AddArgument("action", "archive"))

    .SetAudioUri(new Uri("ms-appx:///Sound.mp3"));

Esta es una representación visual del contenido de la notificación de la aplicación:

Captura de pantalla de una notificación de aplicación con etiquetas para el área de atribución en la parte superior que muestra el icono de la aplicación y el visualizador de notificaciones de nombre de aplicación. La parte central de la notificación se etiqueta como área visual, que incluye tres líneas de texto. La sección inferior de la notificación se etiqueta como el área de acción y contiene dos botones etiquetados como Aceptar y Rechazar.

Área de atribución

El área de atribución está en la parte superior de la notificación de la aplicación. A partir de Windows 11, el nombre y el icono de la aplicación se muestran en esta área. El área de atribución también incluye un botón cerrar que permite al usuario descartar rápidamente la notificación y un menú de puntos suspensivos que permite al usuario deshabilitar rápidamente las notificaciones de la aplicación o ir a la página configuración de Windows para las notificaciones de la aplicación. El shell configura el área de atribución y no se puede invalidar en la carga XML del sistema, aunque la aplicación puede agregar elementos al menú contextual del área de atribución. Para obtener más información, consulte las acciones del menú contextual [] [].

Visual

Cada notificación de aplicación debe especificar un elemento visual, incluyendo una vinculación genérica de toast, y puede contener texto e imágenes. Estos elementos se representarán en varios dispositivos Windows, como escritorio, teléfonos, tabletas y Xbox.

Para todos los atributos admitidos en la sección visual y sus elementos secundarios, consulte el Esquema de Notificación de Aplicación .

Elementos de texto

Cada notificación de aplicación debe tener al menos un elemento de texto y puede contener dos elementos de texto adicionales, todo de tipo AdaptiveText. Los elementos de texto admiten el enlace de datos, que le permite actualizar el contenido de texto una vez mostrada la notificación. Para obtener más información, consúltese Barra de progreso de notificación de la aplicación y enlace de datos.

Captura de pantalla de una notificación de aplicación con tres líneas de texto. La línea superior del texto está en negrita.

Puede controlar cuántas líneas de texto se muestran mediante el método AppNotificationTextProperties.SetMaxLines . El valor predeterminado (y máximo) es de hasta 2 líneas de texto para el título y hasta 4 líneas (combinadas) para los dos elementos de descripción adicionales (segundo y tercer AdaptiveText).

var builder = new AppNotificationBuilder()
    .AddArgument("conversationId", 9813)
    .AddText("Adaptive Tiles Meeting", new AppNotificationTextProperties().SetMaxLines(1))
    .AddText("Conf Room 2001 / Building 135")
    .AddText("10:00 AM - 10:30 AM");

Imagen en línea

De forma predeterminada, las imágenes se muestran insertadas, después de cualquier elemento de texto, rellenando el ancho completo del área visual. Use AppNotificationBuilder.SetInlineImage para agregar una imagen insertada.

Captura de pantalla de una notificación de aplicación que muestra la ubicación predeterminada de la imagen, insertada, rellenando el ancho completo del área visual.

var builder = new AppNotificationBuilder()
    .AddText("Featured image of the day.")
    .SetInlineImage(new Uri("ms-appx:///Images/InlineImage.png"));

AppNotificationManager.Default.Show(builder.BuildNotification());

Sustitución del logotipo de la aplicación

Si se especifica un valor de colocación de "appLogoOverride", la imagen se mostrará en un cuadrado en el lado izquierdo del área visual. Use AppNotificationBuilder.SetAppLogoOverride para establecer esta imagen. El nombre de esta propiedad refleja el comportamiento de las versiones anteriores de Windows, donde la imagen reemplazaría la imagen del logotipo de la aplicación predeterminada. En Windows 11, el logotipo de la aplicación se muestra en el área de atribución, por lo que no se ve afectado por la colocación de la imagen appLogoOverride.

Las dimensiones de imagen son de 48 x 48 píxeles a 100% escalado. Por lo general, se recomienda proporcionar una versión de cada recurso de icono para cada factor de escala: 100%, 125%, 150%, 200%y 400%.

Captura de pantalla de una notificación de aplicación que muestra la colocación de la imagen de sustitución del logotipo de la aplicación en un cuadrado en el lado izquierdo del área visual de la notificación.

var builder = new AppNotificationBuilder()
    .AddText("Featured image of the day.")
    .SetAppLogoOverride(new Uri("ms-appx:///Images/AppLogo.png"));

Recorte de sugerencia

Las directrices de estilo de Microsoft recomiendan representar las imágenes de perfil de forma circular para asegurar una representación uniforme de las personas entre aplicaciones y el entorno. Pase AppNotificationImageCrop.Circle a SetAppLogoOverride para representar la imagen con un recorte circular.

Captura de pantalla de una notificación de aplicación en la que se muestra que el logotipo de la aplicación invalida la ubicación de la imagen recortada en un círculo en el lado izquierdo del área visual de la notificación del sistema.

var builder = new AppNotificationBuilder()
    .AddText("Matt sent you a friend request")
    .AddText("Hey, wanna dress up as wizards and ride around on hoverboards?")
    .SetAppLogoOverride(new Uri("ms-appx:///Images/Profile.png"), AppNotificationImageCrop.Circle);

Imagen de cabecera

Las notificaciones de la aplicación pueden mostrar una imagen destacada, que es una ToastGenericHeroImage destacada que se muestra de forma prominente dentro del banner de la notificación y mientras se encuentra dentro del Centro de notificaciones. Use AppNotificationBuilder.SetHeroImage para agregar una imagen prominente. Las dimensiones de imagen son de 364 x 180 píxeles a 100% escalado.

Captura de pantalla de una notificación de aplicación que muestra la ubicación de la imagen principal, encima del área de atribución.

var builder = new AppNotificationBuilder()
    .AddText("Marry Anne")
    .AddText("Check out where we camped last night!")
    .SetHeroImage(new Uri("ms-appx:///Images/HeroImage.png"));

Restricciones de tamaño de imagen

Las imágenes que usas en la notificación de la aplicación se pueden obtener desde...

  • HTTP://
  • ms-appx:///
  • ms-appdata:///

En el caso de las imágenes web remotas http y https, hay límites en el tamaño de archivo de cada imagen individual. El límite es de 3 MB en conexiones normales y 1 MB en conexiones de uso medido.

Conexión normal Conexión de uso medido
3 MB 1 MB

Si una imagen supera el tamaño del archivo, o no se puede descargar o se agota el tiempo de espera, se quitará la imagen y se mostrará el resto de la notificación.

Texto de atribución

Si necesita hacer referencia al origen del contenido, puede usar texto de atribución. Use AppNotificationBuilder.SetAttributionText para establecer texto de atribución. Este texto siempre se muestra debajo de cualquier elemento de texto, pero por encima de las imágenes en línea. El texto usa un tamaño ligeramente menor que los elementos de texto estándar para ayudar a distinguir entre los elementos de texto normales.

En versiones anteriores de Windows que no admiten texto de atribución, el texto simplemente se mostrará como otro elemento de texto (suponiendo que aún no tenga el máximo de tres elementos de texto).

Captura de pantalla de una notificación de aplicación que muestra el texto de atribución

var builder = new AppNotificationBuilder()
    .AddText("Marry Anne")
    .AddText("Check out where we camped last night!")
    .SetAttributionText("via SMS");
    .SetHeroImage(new Uri("ms-appx:///Images/HeroImage.png"));

Marca de tiempo personalizada

Puede invalidar la marca de tiempo proporcionada por el sistema con su propia marca de tiempo que representa con precisión cuando se generó el mensaje, la información o el contenido. Esta marca de tiempo está visible en el Centro de notificaciones.

Captura de pantalla de una notificación en el Centro de notificaciones con una marca de tiempo personalizada

Para más información sobre el uso de una marca de tiempo personalizada, consulte Marcas de tiempo personalizadas en las notificaciones de la aplicación.

var builder = new AppNotificationBuilder()
    .AddText("Matt sent you a friend request")
    .AddText("Hey, wanna dress up as wizards and ride around on hoverboards?")
    .SetTimeStamp(new DateTime(2017, 04, 15, 19, 45, 00, DateTimeKind.Utc));

Barra de progreso

Puedes proporcionar una barra de progreso en la notificación de la aplicación para mantener al usuario informado del progreso de las operaciones, como las descargas. Las barras de progreso admiten el enlace de datos, lo que permite actualizar dinámicamente los valores de progreso después de mostrar la notificación.

Captura de pantalla de una notificación de aplicación que muestra una barra de progreso.

Para más información sobre el uso de una barra de progreso, consulte Barra de progreso de notificación de la aplicación y enlace de datos.

Headers

Puede agrupar las notificaciones en encabezados dentro del Centro de notificaciones. Por ejemplo, puede agrupar mensajes desde un chat de grupo bajo un encabezado o notificaciones de grupo de un tema común bajo un encabezado, o más.

Captura de pantalla de un centro de actividades que muestra varias notificaciones para el Visor de notificaciones de la aplicación organizada bajo un encabezado con la etiqueta

Para más información sobre el uso de encabezados, consulte Encabezados de notificación de aplicaciones.

Contenido adaptable

Además del contenido especificado anteriormente, también puede mostrar contenido adaptable adicional que será visible cuando se expanda el aviso de notificación.

Este contenido adicional se especifica mediante Adaptive, sobre el cual puede obtener más información leyendo la documentación de Baldosas Adaptativas en .

Tenga en cuenta que cualquier contenido adaptable debe estar contenido dentro de un AdaptiveGroup. De lo contrario, no se representará de manera adaptativa.

Columnas y elementos de texto

Este es un ejemplo en el que se usan columnas y algunos elementos de texto adaptable avanzados. Dado que los elementos de texto están dentro de un GrupoAdaptativo, admiten todas las propiedades de estilo adaptativo enriquecidas.

Captura de pantalla de una notificación de aplicación que muestra grupos de elementos de texto alineados a la izquierda y derecha del área visual de la notificación.

// The Microsoft.Windows.AppNotifications.Builder syntax does not currently support adaptive text elements.

Buttons

Los botones hacen que el toast de tu aplicación sea interactivo, permitiendo al usuario realizar acciones rápidas en la notificación de la aplicación sin interrumpir su actual flujo de trabajo. Por ejemplo, los usuarios pueden responder a un mensaje directamente desde una notificación emergente o eliminar un correo sin abrir la aplicación de correo. Los botones aparecen en la parte expandida de la notificación. Use AppNotificationButton para definir botones y AppNotificationBuilder.AddButton para agregarlos a la notificación.

Para obtener más información sobre la implementación de botones de un extremo a otro, consulte Introducción a las notificaciones de aplicaciones.

Los botones pueden activar una aplicación de las maneras siguientes:

  • La aplicación se activa en primer plano, con un argumento que se puede usar para navegar a una página o contexto específico.
  • Otra aplicación se activa a través del lanzamiento del protocolo.
  • La activación en segundo plano se admite explícitamente para aplicaciones para UWP. Para las aplicaciones del SDK de Windows App, la aplicación siempre se inicia en primer plano. La aplicación puede llamar a AppInstance.GetActivatedEventArgs para detectar si la activación se inició mediante una notificación y determinar a partir de los argumentos pasados si se debe iniciar completamente la aplicación en primer plano o simplemente controlar la notificación y salir.
  • Las acciones del sistema, como posponer o descartar la notificación, se admiten tanto para aplicaciones para UWP como para SDK de Aplicaciones para Windows. Las API AppNotificationBuilder no admiten este escenario, pero las aplicaciones de SDK de Aplicaciones para Windows pueden implementar este escenario mediante el Microsoft.Windows. AppNotifications.Builder API o XML sin formato.

Nota:

Solo puede tener hasta 5 botones (incluidos los elementos de menú contextual que tratamos más adelante).

Captura de pantalla de una notificación de aplicación que muestra una línea de texto seguida de una fila con dos botones definidos por elementos de acción

var builder = new AppNotificationBuilder()
    .AddText("New product in stock!")
    .AddButton(new AppNotificationButton("See more details")
        .AddArgument("action", "viewDetails"))
        .AddArgument("contentId", "351")
    .AddButton(new AppNotificationButton("Remind me later")
        .AddArgument("action", "remindLater"))
        .AddArgument("contentId", "351");

Botones con iconos

Puede agregar iconos a los botones mediante AppNotificationButton.SetIcon. Estos iconos son imágenes transparentes de 16 x 16 píxeles al 100% de escalado y no deben tener relleno incluido en la imagen en sí. Si decide proporcionar iconos en una notificación de aplicación, debe proporcionar iconos para todos los botones de la notificación, ya que transforma el estilo de los botones en botones de icono.

Nota:

Para obtener accesibilidad, asegúrese de incluir una versión en blanco de contraste del icono (un icono negro para fondos blancos), de modo que cuando el usuario active el modo Blanco de contraste alto, el icono está visible. Para obtener más información, vea compatibilidad con notificaciones de mosaico y toast para el idioma, la escala y el contraste alto.

Captura de pantalla de una notificación de aplicación que usa botones con iconos.

var builder = new AppNotificationBuilder()
    .AddText("Return books to the library.")
    .AddButton(new AppNotificationButton("Accept")
        .AddArgument("action", "accept")
        .SetIcon(new Uri("ms-appx:///Images/Accept.png")))
    .AddButton(new AppNotificationButton("Snooze")
        .AddArgument("action", "snooze")
        .SetIcon(new Uri("ms-appx:///Images/Snooze.png")))
    .AddButton(new AppNotificationButton("Dismiss")
        .AddArgument("action", "dismiss")
        .SetIcon(new Uri("ms-appx:///Images/Dismiss.png")));

Nuevo en Windows 11 Update: puede agregar información sobre herramientas a los iconos con la propiedad HintToolTip en XML. Esto es ideal si los botones tienen iconos pero no contenido, ya que esto te asegurará de pasar texto que Windows Narrador pueda leer. Sin embargo, si hay contenido, Narrador leerá el contenido, independientemente de lo que se especifique en la información sobre herramientas.

var button = new AppNotificationButton("Reply")
    .AddArgument("action", "reply");

if (AppNotificationButton.IsToolTipSupported())
{
    button.ToolTip = "Click to reply.";
}

var builder = new AppNotificationBuilder()
    .AddText("Notification text.")
    .AddButton(button); 

Botones con colores

Novedades en la actualización de Windows 11: Puede agregar colores rojos o verdes a los botones mediante AppNotificationButton.SetButtonStyle con AppNotificationButtonStyle. En XML, agregue el atributo useButtonStyle al elemento toast y el atributo hint-buttonStyle al elemento action como se muestra abajo.

Captura de pantalla de una notificación con tres botones, los dos botones izquierdos son verdes con iconos para iniciar una llamada de vídeo o iniciar una llamada de audio. El tercer botón es rojo y tiene un icono para rechazar la llamada.

var builder = new AppNotificationBuilder()
    .SetScenario(AppNotificationScenario.IncomingCall)
    .AddText("Andrew Bares", new AppNotificationTextProperties()
        .SetIncomingCallAlignment())
      .AddText("Incoming Call - Mobile", new AppNotificationTextProperties()
        .SetIncomingCallAlignment())
      .SetInlineImage(new Uri("ms-appx:///Images/Profile.png"),
        AppNotificationImageCrop.Circle)
    .AddButton(new AppNotificationButton()
        .SetToolTip("Answer Video Call")
        .SetButtonStyle(AppNotificationButtonStyle.Success)
        .SetIcon(new Uri("ms-appx:///Images/Video.png"))
        .AddArgument("videoId", "123"))
    .AddButton(new AppNotificationButton()
        .SetToolTip("Answer Phone Call")
        .SetButtonStyle(AppNotificationButtonStyle.Success)
        .SetIcon(new Uri("ms-appx:///Images/Call.png"))
        .AddArgument("callId", "123"))
    .AddButton(new AppNotificationButton()
        .SetToolTip("Hang Up")
        .SetButtonStyle(AppNotificationButtonStyle.Critical)
        .SetIcon(new Uri("ms-appx:///Images/HangUp.png"))
        .AddArgument("hangUpId", "123"));

Acciones del menú contextual

Puede agregar acciones de menú contextual adicionales al menú contextual existente que aparece cuando el usuario hace clic con el botón derecho en la notificación de la aplicación o selecciona el icono del menú contextual. Use AppNotificationButton.SetContextMenuPlacement para colocar un botón en el menú contextual en lugar de la barra de acciones.

Nota:

En los dispositivos más antiguos, estas acciones de menú contextual adicionales simplemente aparecerán como botones normales en la notificación.

Las acciones de menú contextual adicionales que agregue (como "Silenciar chat de grupo durante 1 hora") aparecen encima de las dos entradas del sistema predeterminadas.

Toast con menú contextual

var builder = new AppNotificationBuilder()
    .AddText("Camping this weekend?")
    .SetAppLogoOverride(new Uri("ms-appx:///images/Reply.png"), AppNotificationImageCrop.Circle)
    .AddButton(new AppNotificationButton("Mute group chat for 1 hour")
        .AddArgument("action", "mute")
        .SetContextMenuPlacement());

Nota:

Los elementos de menú contextual adicionales contribuyen al límite total de 5 botones en una notificación emergente.

La activación de elementos de menú contextual adicionales se controla de forma idéntica a los botones de notificación emergente.

Entradas

Las entradas se especifican dentro de la región Actions de la notificación de la aplicación, lo que significa que solo son visibles cuando se expande la notificación.

Cuadro de texto de respuesta rápida

Para habilitar un cuadro de texto de respuesta rápida (por ejemplo, en una aplicación de mensajería) agregue una entrada de texto con AppNotificationBuilder.AddTextBox y un botón, y haga referencia al identificador del campo de entrada de texto para que el botón se muestre junto al campo de entrada. El icono opcional del botón, si se proporciona, debe ser una imagen de 32x32 píxeles sin margen, con píxeles blancos establecidos como transparentes y una escala de 100%.

Captura de pantalla de una notificación de aplicación con una imagen de perfil y algunas líneas de texto. Se incluye un cuadro de texto para escribir directamente en la notificación, así como un botón para enviar la respuesta.

var builder = new AppNotificationBuilder()
    .AddTextBox("textBox", "Type a reply", "Reply")
    .AddButton(AppNotificationButton("Send")
        .AddArguments("action", "Send")
        .SetInputId("textBox"))
    .BuildNotification();

Entradas con barra de botones

También puede tener uno (o varios) campos de entrada con botones convencionales que se muestran debajo de los campos.

Captura de pantalla de una notificación de aplicación que muestra una línea de texto, un cuadro de texto y una fila con dos botones con la etiqueta

// The Microsoft.Windows.AppNotifications.Builder syntax does not currently support quick reply text boxes.

Entrada de selección

Además de los cuadros de texto, también puede usar un menú de selección con AppNotificationBuilder.AddComboBox.

Captura de pantalla de una notificación de aplicación que muestra una línea de texto, una entrada de selección con

var builder = new AppNotificationBuilder()
    .AddText("4th coffee?")
    .AddText("When do you plan to come in tomorrow?")
    .AddComboBox(new AppNotificationComboBox("time")
        .SetTitle("Select an item:")
        .AddItem("breakfast", "Breakfast")
        .AddItem("lunch", "Lunch")
        .AddItem("dinner", "Dinner")
        .SetSelectedItem("lunch"))
    .AddButton(new AppNotificationButton("Reply")
        .AddArgument("action", "reply")
        .AddArgument("threadId", "9218")
        .SetContextMenuPlacement())
    .AddButton(new AppNotificationButton("Call restaurant")
        .AddArgument("action", "videocall")
        .AddArgument("threadId", "9218")
        .SetContextMenuPlacement());

Posponer o descartar

Con un menú de selección y dos botones, podemos crear una notificación de recordatorio que utilice las acciones de aplazar y descartar del sistema. Asegúrese de establecer el escenario en "Reminder" para que la notificación se comporte como un recordatorio.

Captura de pantalla de una notificación de aplicación con líneas de texto que describen la hora y la ubicación de una reunión. Un cuadro de selección tiene

Vinculamos el botón Posponer a la entrada del menú de selección mediante la propiedad SelectionBoxId en el botón de notificación emergente.

El Microsoft.Windows. AppNotifications.Builder sintaxis no admite actualmente la activación del sistema. Pero este escenario es compatible con las apps de SDK de Aplicaciones para Windows, y puedes crear notificaciones para este escenario usando XML bruto.

// The Microsoft.Windows.AppNotifications.Builder syntax does not currently support system activation. 
// But this scenario is supported for Windows App SDK apps, and you can build notifications for this 
// scenario using raw XML.

Para usar el sistema posponer y descartar acciones:

  • Especificar un ToastButtonSnooze o ToastButtonDismiss
  • Opcionalmente, especifique una cadena de contenido personalizada:
  • Si no proporciona una cadena, usaremos automáticamente cadenas localizadas para "Posponer" y "Descartar".
  • Opcionalmente, especifique el SelectionBoxId :
  • Si no desea que el usuario seleccione un intervalo de posponer y, en su lugar, solo quiere que la notificación posponga solo una vez por un intervalo de tiempo definido por el sistema (coherente en todo el sistema operativo), no cree ninguna entrada <> en absoluto.
  • Si desea proporcionar selecciones de intervalo de posponer: - Especifique SelectionBoxId en la acción posponer. - Haga coincidir el identificador de la entrada con el SelectionBoxId de la acción posponer. - Especifique que el valor de ToastSelectionBoxItemsea un entero no negativo que represente el intervalo de posposición en minutos.

Sonido

Use AppNotificationBuilder.SetAudioUri para especificar un archivo de audio personalizado o use AppNotificationBuilder.SetAudioEvent para seleccionar un sonido del sistema. Se puede hacer referencia al audio personalizado a través de las siguientes rutas de acceso:

  • ms-appx:///
  • ms-appdata:///
var builder = new AppNotificationBuilder()
    .AddText("Notification text.")
    .SetAudioUri(new Uri("ms-appx:///Audio/NotificationSound.mp3"));

Como alternativa, puede elegir de la lista de ms-winsoundevents, que siempre han sido compatibles con ambas plataformas.

var builder = new AppNotificationBuilder()
    .AddText("Notification text.")
    .SetAudioEvent(AppNotificationSoundEvent.Alarm, AppNotificationAudioLooping.Loop);

Consulte la página del esquema de audio para obtener información sobre el audio en las notificaciones de la aplicación. Para obtener información sobre cómo enviar una notificación de aplicación que usa audio personalizado, consulte Audio personalizado en las notificaciones de la aplicación.

Escenarios

Para crear notificaciones importantes, alarmas, recordatorios y notificaciones de llamadas entrantes, use AppNotificationBuilder.SetScenario con un valor AppNotificationScenario . El escenario ajusta algunos comportamientos para crear una experiencia de usuario coherente y unificada. Hay cuatro valores posibles Escenario:

  • Reminder
  • Alarm
  • IncomingCall
  • Urgent

Recordatorios

En el escenario de recordatorio, la notificación permanecerá en pantalla hasta que el usuario la descarte o realice una acción. En Windows Mobile, la notificación de la aplicación también se mostrará expandida previamente. Se reproducirá un sonido de recordatorio. Debe proporcionar al menos un botón en la notificación de la aplicación. De lo contrario, la notificación se tratará como una notificación normal.

var builder = new AppNotificationBuilder()
    .AddText("Notification text.")
    .SetScenario(AppNotificationScenario.Reminder);

Alarmas

Las alarmas se comportan igual que los recordatorios, salvo que las alarmas también repetirán el audio con un sonido de alarma predeterminado. Debe proporcionar al menos un botón en la notificación de la aplicación. De lo contrario, la notificación se tratará como una notificación normal.

var builder = new AppNotificationBuilder()
    .AddText("Notification text.")
    .SetScenario(AppNotificationScenario.Alarm)
    .AddButton(new AppNotificationButton("Dismiss")
        .AddArgument("action", "dismiss"));

Llamadas entrantes

Las notificaciones de llamadas entrantes se muestran ya expandidas en un formato especial para llamadas y permanecen en la pantalla del usuario hasta que el usuario las descarte. El sonido del tono de llamada se repetirá por defecto. En dispositivos móviles con Windows, se muestran en pantalla completa.

Notificación de aplicación de llamada entrante

var builder = new AppNotificationBuilder()
    .SetScenario(AppNotificationScenario.IncomingCall)
    .AddText("Andrew Bares", new AppNotificationTextProperties()
        .SetIncomingCallAlignment())
    .AddText("incoming call - mobile", new AppNotificationTextProperties()
        .SetIncomingCallAlignment())
      .SetInlineImage(new Uri("ms-appx:///images/profile.png"),
        AppNotificationImageCrop.Circle)
    .AddButton(new AppNotificationButton("Text reply")
        .SetToolTip("Text reply")
        .SetIcon(new Uri("ms-appx:///images/reply.png"))
        .AddArgument("textId", "123"))
    .AddButton(new AppNotificationButton("Reminder")
        .SetToolTip("Reminder")
        .SetIcon(new Uri("ms-appx:///images/reminder.png"))
        .AddArgument("reminderId", "123"))
    .AddButton(new AppNotificationButton("Ignore")
        .SetToolTip("Ignore")
        .SetIcon(new Uri("ms-appx:///images/ignore.png"))
        .AddArgument("ignoreId", "123"))
    .AddButton(new AppNotificationButton("Answer")
        .SetToolTip("Answer")
        .SetIcon(new Uri("ms-appx:///images/answer.png"))
        .AddArgument("answerId", "123"));

Notificaciones importantes

Importante

Requires: debe ejecutar Windows Insider Preview Build 22546 o posterior para usar notificaciones importantes.

Las notificaciones importantes permiten a los usuarios tener más control sobre lo que las aplicaciones de terceros y de terceros pueden enviarles notificaciones de aplicación de alta prioridad (urgentes o importantes) que pueden interrumpir la asistencia de enfoque (no molestar). Esto se puede modificar en la configuración de notificaciones.

Captura de pantalla de una notificación de aplicación urgente que tiene un signo de exclamación en el área de atribución junto al nombre de la aplicación. La imagen también muestra la notificación de aplicación iniciada por el sistema que proporciona botones para que el usuario permita o no permita notificaciones urgentes de la aplicación.

var builder = new AppNotificationBuilder()
    .AddText("Adaptive Tiles Meeting", 
        new AppNotificationTextProperties()
            .SetMaxLines(1))
    .AddText("Conf Room 2001 / Building 135")
    .AddText("10:00 AM - 10:30 AM");

if (AppNotificationBuilder.IsUrgentScenarioSupported())
{
    builder.SetScenario(AppNotificationScenario.Urgent);
}

Localización y accesibilidad

Los iconos y las notificaciones de la aplicación pueden cargar cadenas e imágenes adaptadas para lenguaje de visualización, factor de escala de pantalla, contraste alto y otros contextos en tiempo de ejecución. Para obtener más información, consulta compatibilidad de notificaciones emergentes y mosaicos para idioma, escala y contraste alto.

Gestión de la activación

Para obtener información sobre cómo controlar las activaciones de aplicaciones (el usuario hace clic en la notificación o los botones de la notificación), consulte Introducción a las notificaciones de la aplicación.