Поделиться через


Обзор уведомлений Windows

Windows предоставляет несколько API уведомлений в разных поколениях пакетов SDK. Если вы ищете в Интернете, как отправить уведомление и найти конфликтующие примеры, эта страница поможет выбрать правильный API для вашего приложения.

Какой API следует использовать?

Ответ зависит от того, какой пакет SDK предназначен для вашего приложения:

Тип приложения Рекомендуемый API Namespace
WinUI 3 / Windows App SDK (новые приложения) AppNotificationManager Microsoft.Windows.AppNotifications
WPF, WinForms или неупакованный Win32 AppNotificationManager через NuGet Microsoft.Windows.AppNotifications
UWP (существующие приложения, без плановой миграции) ToastNotificationManager Windows.UI.Notifications

Это важно

Большинство ответов Stack Overflow и старых учебников используют ToastNotificationManager из пространства имен Windows.UI.Notifications. Это API WinRT UWP. Он работает в приложениях UWP и может работать в некоторых классических сценариях, но это не рекомендуемый путь для новых приложений Windows App SDK. Используйте AppNotificationManager для новой разработки.

Сравнение API уведомлений

Функция AppNotificationManager (Windows App SDK) ToastNotificationManager (WinRT)
Рекомендуется для WinUI 3, WPF, WinForms, неупакованные приложения Win32 UWP (Универсальная платформа Windows)
Пакет NuGet Microsoft.WindowsAppSDK Нет (входящие)
Требуется идентификатор пакета Нет (работает как в упаковке, так и без нее) Требуется для некоторых функций
Интеграция push-уведомлений PushNotificationManager (Windows App SDK) API каналов WNS (Windows.Networking.PushNotifications)
Активная разработка Да Только обслуживание

Типы уведомлений

Выбрав правильный API, определите, как будет доставлено уведомление:

Тип Описание Используйте, когда
Уведомление о локальном приложении Активируется непосредственно кодом приложения во время выполнения Вы хотите оповещать пользователя о событии в приложении
Scheduled Установка будущего времени для отображения уведомления Напоминания календаря, оповещения
Пуш (WNS) Отправка из облачной службы через службы push-уведомлений Windows Сообщения чата, критические новости, обновления в режиме реального времени
Значок Небольшое наложение на значок панели задач приложения Непрочитанное число, индикатор состояния

Полный разбивка методов доставки см. в разделе "Выбор метода доставки уведомлений".

Дальнейшие действия

Создаёте приложение WinUI 3 или Windows App SDK?

Создаёте приложение WPF или WinForms?

Это важно

для push-уведомлений Windows App SDK требуется учетная запись Azure и регистрация приложения Azure AD. Если ваше приложение упаковано, вам также следует отправить запрос на сопоставление имен семейства пакетов (PFN) по электронной почте — учитывайте до одной недели времени обработки перед запуском. См. быстрый старт по отправке push-уведомлений, чтобы ознакомиться со всеми предварительными требованиями.

Создание или обслуживание приложения UWP?

Перенос приложения UWP на Windows App SDK?