Язык: HTML | XAML

Использование очереди с локальными уведомлениями (XAML)

Applies to Windows and Windows Phone

Примечание  Не используете C#, VB и C++? См. раздел Как использовать очередь уведомлений для локальных уведомлений (HTML).

В этом разделе описывается, как включить очередь уведомлений для плитки. В нем также показано, как присвоить уведомлению тег перед отправкой во избежание появления в очереди копий или устаревшего содержимого. При включенной очереди уведомлений Windows будет последовательно прокручивать до пяти уведомлений.

Версии для примеров JavaScript, приведенных в данном кратком руководстве, см. в разделе Использование очереди с локальными уведомлениями (JavaScript).

Примечание  В этом кратком руководстве мы работаем с содержимым уведомления непосредственно через модель DOM XML. Кроме того, это можно делать и через библиотеку NotificationsExtensions, в которой XML-содержимое представлено в форме свойств объекта, включая свойства Intellisense. Дополнительные сведения см. в разделе Краткое руководство: использование библиотеки NotificationsExtensions в коде. Посмотреть, как представленный в этом кратком руководстве программный код будет выглядеть при использовании библиотеки NotificationsExtenstions, можно в Примере App tiles and badges.

Что необходимо знать

Технологии

  • Windows Runtime

Необходимые условия

Для понимания этого раздела вам понадобится следующее:

Инструкции

Этап 1: Добавьте объявления пространств имен

Пространство имен Windows.UI.Notifications включает API всплывающих уведомлений.



using Windows.UI.Notifications;
using Windows.Data.Xml.Dom;

Этап 2: Задайте параметр для включения циклического изменения уведомлений

Этот код включает очередь уведомлений для вашего приложения. Во время работы приложения этот вызов нужен только один раз, хотя и от повторного вызова вреда не будет. Рекомендуется поместить этот вызов в код инициализации приложения. Это гарантирует, что вызов произойдет до локального обновления плитки, запроса канала push-уведомления или начала периодических обновлений плитки.



TileUpdateManager.CreateTileUpdaterForApplication().EnableNotificationQueue(true);

Этап 3: Создайте уведомление на плитке

Это первый шаг для любых уведомлений плитки. Он ничем не отличается от других случаев и добавлен только для полноты примера. Более подробные сведения см. в разделе Краткое руководство: отправка обновления плитки.

Примечание  При вызове метода GetTemplateContent в Windows 8 он возвращает шаблон версии 1. Когда вызов этого метода происходит в системе Windows 8.1, он возвращает шаблон версии 2 или шаблон версии 3, если речь идет о шаблонах, предназначенных только для телефонов. Но если совместимость с Windows 8 объявлена в манифесте приложения, этот метод возвращает шаблон версии 1 независимо от версии Windows. В этом разделе мы будем использовать шаблон версии 2.



TileUpdateManager.GetTemplateContent(TileTemplateType.TileWide310x150ImageAndText01);
XmlDocument tileXml = TileUpdateManager.GetTemplateContent(tileTemplate);

// TO DO: Fill in the template with your tile content. Define a tile and add it to tileXML.

TileNotification tileNotification = new TileNotification(tileXml);

Этап 4: Присвойте уведомлению тег

Тег — это строка длиной не более 16 буквенно-цифровых символов с завершающим нуль-символом, которая однозначно определяет уведомление в приложении.

При включении очереди в плитке могут попеременно отображаться максимум пять уведомлений плитки. По умолчанию политика замены уведомлений в очереди использует метод FIFO; когда очередь переполнена, при приходе нового уведомления удаляется самое старое уведомление. Учтите, что порядок отображения уведомлений не соответствует строгому линейному шаблону. Уведомления могут отображаться не в том порядке, в каком они пришли.

Чтобы переопределить поведение очереди FIFO, можно присвоить уведомлениям теги. Если вновь пришедшее уведомление имеет тот же тег, что и уже существующее, то новое уведомление заменяет старое, независимо от того, на каком месте в очереди находилось старое уведомление. Например, если плитка показывает курсы акций, желательно, чтобы там отображались самые последние сведения. Использование тегов для замены уведомлений в очереди осуществляется по выбору пользователя.

Подробнее об использовании тегов с очередью уведомлений см. в разделе Использование очереди уведомлений. В приведенном ниже примере показана установка тегов для локальных уведомлений. Для получения сведений об установке тегов для периодических обновлений см. раздел Tileupdater.StartPeriodicUpdateBatch. Сведения об установке тегов для push-уведомлений см. в разделе Заголовки запроса и ответа в службе push-уведомлений.


tileNotification.Tag = "stockMSFT";

Этап 5: Отправить уведомление на плитку



TileUpdateManager.CreateTileUpdaterForApplication().Update(tileNotification);

Связанные разделы

Краткое руководство: отправка обновления плитки
Пример плиток и индикаторов событий приложений
Размеры изображения плитки и всплывающих уведомлений
Общие сведения о плитках и уведомлениях плиток
Руководство и контрольный список для плиток

 

 

Показ:
© 2014 Microsoft