Encabezados de notificación del sistema
Puede agrupar visualmente un conjunto de notificaciones relacionadas dentro del Centro de actividades mediante un encabezado de notificación del sistema en las notificaciones.
Importante
Requiere Desktop Creators Update y 1.4.0 de la biblioteca de notificaciones: debe ejecutar la compilación de escritorio 15063 o posterior para ver los encabezados del sistema. Debes usar la versión 1.4.0 o posterior de la biblioteca NuGet Notificaciones del Kit de herramientas de la comunidad para UWP para construir el encabezado en el contenido de la notificación del sistema. Los encabezados solo se admiten en escritorio.
Como se muestra a continuación, esta conversación de grupo se unifica bajo un único encabezado, "Camping!!". Cada mensaje individual de la conversación es una notificación del sistema independiente que comparte el mismo encabezado del sistema.
También puedes agrupar visualmente las notificaciones por categoría, como recordatorios de vuelos, seguimiento de paquetes, etc.
Agregar un encabezado a una notificación del sistema
Aquí se muestra cómo agregar un encabezado a una notificación del sistema.
Nota:
Los encabezados solo se admiten en escritorio. Los dispositivos que no admiten encabezados simplemente omitirán el encabezado.
new ToastContentBuilder()
.AddHeader("6289", "Camping!!", "action=openConversation&id=6289")
.AddText("Anyone have a sleeping bag I can borrow?");
En resumen...
- Agregar el encabezado a toastContent
- Asignar las propiedades Id, Title y Arguments necesarias
- Envío de la notificación (más información)
- En otra notificación, use el mismo identificador de encabezado para unificarlos en el encabezado. El identificador es la única propiedad que se usa para determinar si las notificaciones deben agruparse, lo que significa que el título y los argumentos pueden ser diferentes. Se usan el título y los argumentos de la notificación más reciente dentro de un grupo. Si se quita esa notificación, el título y los argumentos vuelven a la siguiente notificación más reciente.
Controlar la activación desde un encabezado
Los usuarios pueden hacer clic en los encabezados para que el usuario pueda hacer clic en el encabezado para obtener más información de la aplicación.
Por lo tanto, las aplicaciones pueden proporcionar argumentos en el encabezado, similares a los argumentos de inicio en la propia notificación del sistema.
La activación se controla de forma idéntica a la activación del sistema normal, lo que significa que puede recuperar estos argumentos en el método OnActivated del App.xaml.cs
mismo modo que lo hace cuando el usuario hace clic en el cuerpo de la notificación del sistema o en un botón de la notificación del sistema.
protected override void OnActivated(IActivatedEventArgs e)
{
// Handle toast activation
if (e is ToastNotificationActivatedEventArgs)
{
// Arguments specified from the header
string arguments = (e as ToastNotificationActivatedEventArgs).Argument;
}
}
Información adicional
El encabezado separa visualmente las notificaciones y grupos. No cambia ninguna otra logística sobre el número máximo de notificaciones que una aplicación puede tener (20) y el comportamiento primero en salir de la lista de notificaciones.
El orden de las notificaciones dentro de los encabezados es el siguiente... Para una aplicación determinada, la notificación más reciente de la aplicación (y todo el grupo de encabezados si parte de un encabezado) aparecerá primero.
El identificador puede ser cualquier cadena que elija. No hay restricciones de longitud ni caracteres en ninguna de las propiedades de ToastHeader. La única restricción es que todo el contenido del sistema XML no puede ser superior a 5 KB.
La creación de encabezados no cambia el número de notificaciones que se muestran en el Centro de actividades antes de que aparezca el botón "Ver más" (este número es 3 de forma predeterminada y el usuario puede configurarlo para cada aplicación en configuración del sistema para las notificaciones).
Al hacer clic en el encabezado, al igual que al hacer clic en el título de la aplicación, no se borran las notificaciones que pertenecen a este encabezado (la aplicación debe usar las API del sistema para borrar las notificaciones pertinentes).