Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этом руководстве вы создадите центр уведомлений для отправки push-уведомлений в приложение универсальной платформы Windows (UWP). Вы создаете пустое приложение Магазина Windows, которое получает push-уведомления с помощью службы push-уведомлений Windows (WNS). Затем вы используете центр уведомлений для трансляции push-уведомлений на все устройства, на которых работает ваше приложение.
Примечание.
Полный код для работы с этим руководством можно найти на портале GitHub.
Выполните следующие действия.
- Создание приложения в Магазине Windows
- Создание концентратора уведомлений
- Создание примера приложения Для Windows
- Отправка проверочных уведомлений
Предпосылки
- Подписка Azure. Если у вас еще нет подписки Azure, создайте бесплатную учетную запись Azure, прежде чем начинать работу.
- Microsoft Visual Studio 2017 или более поздней версии. В этом руководстве используется Visual Studio 2019.
- Установленные средства разработки приложений UWP
- Активная учетная запись Магазина Windows
- Убедитесь, что включена функция получения уведомлений из приложений и других отправителей .
- Запустите окно "Параметры " на компьютере.
- Выберите плитку System .
- Выберите уведомления и действия в меню слева.
- Убедитесь, что включен параметр получения уведомлений из приложений и других отправителей . Если он не включен, включите его.
Завершение работы с этим руководством является обязательным условием для всех других руководств по Центрам уведомлений для приложений UWP.
Создание приложения в Магазине Windows
Примечание.
Служба push-уведомлений Майкрософт (MPNS) устарела и больше не поддерживается.
Чтобы отправить push-уведомления в приложения UWP, свяжите приложение с Магазином Windows. Затем настройте центр уведомлений для интеграции с WNS.
Перейдите в Центр разработки для Windows, войдите с помощью учетной записи Майкрософт и выберите "Создать новое приложение".
Введите имя приложения и выберите "Зарезервировать имя продукта". При этом создается новая регистрация Магазина Windows для вашего приложения.
Разверните Управление продуктом и выберите Идентификатор продукта. Take note of the Package SID, Package/Identity/Name, Package/Identity/Publisher, and Package/Properties/PublisherDisplayName values.
В разделе "Управление продуктами" выберите WNS/MPNS и выберите портал регистрации приложений. Войдите в свою учетную запись Майкрософт. Откроется страница регистрации приложения на новой вкладке.
В разделе Essentials выберите учетные данные клиента: добавьте сертификат или секрет.
На странице "Сертификаты и секреты" в разделе секретов клиента выберите новый секрет клиента. После создания секрета клиента (также называемого секретом приложения), запишите его перед выходом из страницы.
Предупреждение
После их создания можно просматривать только значения секрета клиента (секрет приложения). Перед выходом из страницы сохраните секрет.
Предупреждение
Секрет приложения и идентификатор безопасности пакета являются важными учетными данными безопасности. Не делитесь этими значениями с кем-либо и не распространяйте их вместе с вашим приложением.
Создание центра уведомлений
Войдите на портал Azure.
В меню слева выберите Все службы.
Введите Центры уведомлений в текстовое поле Фильтрация служб. Щелкните значок звездочки рядом с именем службы, чтобы добавить ее в раздел Избранное в меню слева. Выберите Центры уведомлений.
На странице Центры уведомлений выберите Добавить на панели инструментов.
На вкладке Основные сведения на странице Центр уведомлений выполните следующие действия:
В поле Подписка выберите имя подписки Azure, которую вы хотите использовать, а затем выберите существующую группу ресурсов или создайте новую.
Введите уникальное имя нового пространства имен в разделе Сведения о пространстве имен.
Пространство имен содержит один или несколько концентраторов уведомлений, поэтому укажите имя концентратора в поле Сведения о Концентраторе уведомлений.
Выберите значение в раскрывающемся списке Расположение. Это значение определяет расположение, в котором создается центр.
Просмотрите параметр Зоны доступности. Если вы выбрали регион с зонами доступности, флажок будет установлен по умолчанию. Зоны доступности является платной функцией, поэтому дополнительная плата добавляется на ваш уровень.
Выберите вариант аварийного восстановления: Нет, парный регион восстановления или гибкий регион восстановления. If you choose Paired recovery region, the failover region is displayed. Если выбрать гибкий регион восстановления, используйте раскрывающийся список регионов восстановления.
Выберите Создать.
После завершения развертывания выберите "Перейти к ресурсу".
Настройка параметров WNS для концентратора
В категории "ПАРАМЕТРЫ УВЕДОМЛЕНИЯ" выберите Windows (WNS).
Введите значения идентификатора безопасности пакета (например, ms-app://
<Your Package SID>
) и ключа безопасности ( секрет приложения), которые вы указали из предыдущего раздела.Нажмите кнопку "Сохранить " на панели инструментов.
Теперь центр уведомлений настроен для работы с WNS. У вас есть строки подключения для регистрации приложения и отправки уведомлений.
Создание примера приложения Для Windows
В Visual Studio откройте меню Файл и выберите Создать, а затем — Проект.
В диалоговом окне "Создание проекта" выполните следующие действия:
В поле поиска в верхней части введите Windows Universal.
В результатах поиска выберите пустое приложение (универсальное приложение Windows) и нажмите кнопку "Далее".
В диалоговом окне "Настройка нового проекта " введите имя проекта и расположение для файлов проекта.
Выберите Создать.
Примите значения по умолчанию для целевых и минимальных версий платформы и нажмите кнопку "ОК".
В обозревателе решений щелкните правой кнопкой мыши проект приложения Магазина Windows, выберите "Опубликовать" и выберите "Связать приложение с Магазином". Откроется мастер связывания приложения с Магазином Windows.
In the wizard, sign in with your Microsoft account.
Выберите приложение, зарегистрированного на шаге 2, нажмите кнопку "Далее", а затем нажмите кнопку "Связать". Это позволяет добавить необходимые сведения о регистрации Магазина Windows в манифест приложения.
В Visual Studio щелкните решение правой кнопкой мыши и выберите пункт "Управление пакетами NuGet". Откроется окно "Управление пакетами NuGet ".
В поле поиска введите WindowsAzure.Messaging.Managed, выберите "Установить" и примите условия использования.
Это действие загружает, устанавливает и добавляет ссылку на библиотеку Центров уведомлений Azure для Windows с помощью пакета NuGet Microsoft.Azure.NotificationHubs.
App.xaml.cs
Откройте файл проекта и добавьте следующие инструкции:using Windows.Networking.PushNotifications; using Microsoft.WindowsAzure.Messaging; using Windows.UI.Popups;
В файле проекта
App.xaml.cs
найдитеApp
класс и добавьте следующееInitNotificationsAsync
определение метода. Замените<your hub name>
на имя концентратора уведомлений, который вы создали на портале Azure, а<Your DefaultListenSharedAccessSignature connection string>
на строку подключенияDefaultListenSharedAccessSignature
со страницы Политики доступа вашего концентратора уведомлений.private async void InitNotificationsAsync() { var channel = await PushNotificationChannelManager.CreatePushNotificationChannelForApplicationAsync(); var hub = new NotificationHub("<your hub name>", "<Your DefaultListenSharedAccessSignature connection string>"); var result = await hub.RegisterNativeAsync(channel.Uri); // Displays the registration ID so you know it was successful if (result.RegistrationId != null) { var dialog = new MessageDialog("Registration successful: " + result.RegistrationId); dialog.Commands.Add(new UICommand("OK")); await dialog.ShowAsync(); } }
Этот код извлекает URI канала для приложения из WNS, а затем регистрирует URI канала в центре уведомлений.
Примечание.
Замените заполнитель
hub name
именем концентратора уведомлений, отображаемым на портале Azure. Also replace the connection string placeholder with theDefaultListenSharedAccessSignature
connection string that you obtained from the Access Polices page of your notification hub in a previous section.At the top of the
OnLaunched
event handler inApp.xaml.cs
, add the following call to the newInitNotificationsAsync
method:InitNotificationsAsync();
Это действие гарантирует, что универсальный код ресурса (URI) канала регистрируется в центре уведомлений при каждом запуске приложения.
Щелкните правой кнопкой мыши
Package.appxmanifest
и выберите команду View Code (F7). Найдите<Identity .../>
и замените значение Name на Package/Identity/Name, а его значение Publisher на значение Package/Identity/Publisher из созданного вами ранее приложения.Чтобы запустить приложение, нажмите клавишу F5 клавиатуры. Откроется диалоговое окно, содержащее ключ регистрации. Чтобы закрыть диалоговое окно, нажмите кнопку "ОК".
Your app is now ready to receive toast notifications.
Отправка проверочных уведомлений
Вы можете быстро протестировать получение уведомлений в приложении, отправив уведомления на портале Azure.
На портале Azure перейдите на вкладку "Обзор" и выберите "Проверить отправку " на панели инструментов.
В окне "Отправка теста" выполните следующие действия:
Для платформ выберите Windows.
For Notification Type, select Toast.
Выберите Отправить.
Просмотрите результат операции отправки в списке результатов в нижней части окна. Вы также увидите сообщение об оповещении.
Появится уведомление: тестовое сообщение на рабочем столе.
Дальнейшие действия
You have sent broadcast notifications to all your Windows devices by using the portal or a console app. Чтобы узнать, как отправлять push-уведомления на конкретные устройства, перейдите к следующему руководству: