Cómo usar la cola de notificaciones (HTML)
[ Este artículo está destinado a desarrolladores de Windows 8.x y Windows Phone 8.x que escriben aplicaciones de Windows en tiempo de ejecución. Si estás desarrollando para Windows 10, consulta la documentación más reciente
Nota ¿No usas JavaScript? Consulta Cómo usar la cola de notificaciones.
En este tema se muestra cómo habilitar la cola de notificaciones en el icono, en este caso, mediante notificaciones locales. También se muestra cómo etiquetar la notificación antes de enviarla para evitar contenido duplicado o desactualizado en la cola. Una vez habilitada la cola de notificaciones, Windows recorrerá hasta cinco notificaciones.
Para ver las versiones para C#, C++ o Visual Basic de los ejemplos para JavaScript incluidos en este inicio rápido, consulta Cómo usar la cola de notificaciones (C#, C++ o Visual Basic).
Nota En este inicio rápido, manipularás el contenido de la notificación directamente a través del Document Object Model (DOM) XML. Un enfoque opcional se encuentra disponible a través de la biblioteca NotificationsExtensions, que presenta el contenido XML como propiedades de objeto, incluido IntelliSense. Para obtener más información, consulta Inicio rápido: usar la biblioteca NotificationsExtensions en el código. Para ver el código de este inicio rápido expresado mediante NotificationsExtensions, consulta la muestra de notificaciones e iconos de la aplicación.
Lo que debes saber
Tecnologías
- Windows Runtime
Requisitos previos
Para comprender este tema, necesitarás:
- Conocimientos prácticos sobre los términos y conceptos de iconos y notificaciones. Para más información, consulta el tema sobre iconos, distintivos y notificaciones.
- Estar familiarizado con el esquema XML del icono. Para más información, consulta el tema sobre el esquema de icono.
- Capacidad para crear una aplicación de la Tienda Windows con JavaScript básica mediante las API de Windows en tiempo de ejecución. Para obtener más información, consulta el tema sobre cómo crear tu primera aplicación de la Tienda Windows con JavaScript.
- Un icono predeterminado existente para la aplicación definido en el manifiesto de tu aplicación. Para más información, consulta el tema de inicio rápido: crear un icono predeterminado mediante el editor de manifiestos de Microsoft Visual Studio.
- Estar familiarizado con XML y su manipulación mediante API de Document Object Model (DOM).
Instrucciones
Paso 1: Opcional: declarar una variable de espacio de nombres
Este paso te proporciona un nombre corto para que lo uses en lugar del nombre completo del espacio de nombres. Es el equivalente de una instrucción "using" en C# o de la instrucción "Imports" en Visual Basic. Esto permite simplificar el código.
Nota El resto del código de este inicio rápido supone que se ha declarado esta variable.
var notifications = Windows.UI.Notifications;
Paso 2: Establece la opción para habilitar el desplazamiento de las notificaciones
Este código habilita la cola de notificaciones para la aplicación. Solo es necesario hacer esta llamada una vez durante la ejecución de la aplicación, aunque llamarla de nuevo no supondría ningún problema. Recomendamos que realices esta llamada en el código de inicialización de la aplicación. De este modo se garantiza que la llamada se realizará antes de actualizar localmente el icono, solicitar un canal de notificaciones de inserción o iniciar actualizaciones periódicas del icono.
notifications.TileUpdateManager.createTileUpdaterForApplication().enableNotificationQueue(true);
Paso 3: Crear una notificación de icono
Este es el primer paso de todas las notificaciones de icono y es el mismo aquí que en cualquier otra situación; se incluye aquí solamente para ofrecer una información completa. Si quieres obtener más información, consulta el tema de Inicio rápido: enviar una actualización de icono.
Nota Cuando se llama a getTemplateContent en un sistema Windows 8, devuelve una plantilla de la versión 1. Cuando se llama a este método en un sistema Windows 8.1, devuelve una plantilla de la versión 2 o una plantilla de la versión 3 en el caso de las plantillas solo para teléfono. Sin embargo, si una aplicación especifica compatibilidad con Windows 8 en su manifiesto, este método devuelve una plantilla de la versión 1, independientemente de la versión de Windows. En este tema usaremos una plantilla de la versión 2.
var template = notifications.TileTemplateType.tileWide310x150ImageAndText01;
var tileXml = notifications.TileUpdateManager.getTemplateContent(template);
// TO DO: Fill in the template with your tile content. Define a tile and add it to tileXML.
var tileNotification = new notifications.TileNotification(tileXml);
Paso 4: Opcional: proporcionar una etiqueta a la notificación
Una etiqueta es una cadena de no más de 16 caracteres alfanuméricos, además de un carácter nulo de terminación, que identifica de manera única su notificación dentro de la aplicación.
Cuando la cola está habilitada, pueden recorrer automáticamente el icono un máximo de cinco notificaciones. De manera predeterminada, la directiva de reemplazo para las notificaciones de la cola es la de primero en entrar, primero en salir (FIFO). Cuando la cola está llena y llega una nueva notificación, se quita la más antigua. Ten en cuenta que el orden de visualización de las notificaciones no sigue un estricto patrón lineal. Los usuarios pueden ver las notificaciones en un orden distinto del que llegan.
Para invalidar el comportamiento de cola de FIFO, se le puede asignar una etiqueta a la notificación. Si llega una misma notificación con la misma etiqueta a una notificación existente, la nueva notificación reemplaza a la antigua, independientemente del puesto de la notificación antigua en la cola. Por ejemplo, si tu icono muestra precios de acciones bursátiles, sería recomendable mostrar la información más actualizada. El uso de etiquetas para reemplazar notificaciones en la colas es opcional.
Para obtener más información acerca del uso de etiquetas con la cola de notificaciones, consulta Uso de la cola de notificaciones. El siguiente ejemplo muestra cómo establecer la etiqueta para notificaciones locales. Para obtener información sobre cómo establecer etiquetas para actualizaciones periódicas, consulta Tileupdater.startPeriodicUpdateBatch. Para obtener información sobre cómo establecer etiquetas para notificaciones de inserción, consulta Solicitud de servicio de notificaciones de inserción y encabezados de respuesta.
tileNotification.tag = "stockMSFT";
Paso 5: Envía la notificación al icono
notifications.TileUpdateManager.createTileUpdaterForApplication().update(tileNotification);
Temas relacionados
Inicio rápido: enviar una actualización de icono
Muestra de distintivos e iconos de aplicación
Tamaños de las imágenes de iconos y notificaciones del sistema