Краткое руководство: добавление push-уведомлений в мобильную службу (JavaScript)

[ Эта статья адресована разработчикам приложений среды выполнения Windows для Windows 8.x и Windows Phone 8.x. При разработке приложений для Windows 10 см. раздел последняя документация]

В этом руководстве показано, как включить push-уведомления в приложении с помощью мобильных служб Azure. Мобильные службы облегчают отправку push-уведомлений с помощью служб push-уведомлений Windows (WNS). Дополнительные сведения см. в центре разработки мобильных служб. Microsoft Visual Studio 2013 упрощает включение push-уведомлений в приложении мобильных служб. Этот раздел является продолжением предыдущей статьи Краткое руководство: добавление мобильной службы. Изучив этот раздел, вы сможете добавить push-уведомления в новую мобильную службу и проверить приложение, отправив новое уведомление.

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

Добавление и настройка push-уведомлений в приложении

Сначала для регистрации приложения в Магазине Windows, конфигурации мобильной службы для работы с push-уведомлениями и добавления кода в приложение для регистрации канала устройства вы используете мастер добавления push-уведомлений в Visual Studio 2013.

Примечание  Настоящая статья предполагает, что подключение к мобильной службе, описанное в предыдущем разделе, уже добавлено в проект. Если мобильная служба не была подключена, мастер добавления push-уведомлений создаст для вас это подключение.

 

  1. В Visual Studio 2013 откройте обозреватель решений, щелкните проект правой кнопкой мыши, нажмите кнопку Добавить, а затем выберите Push-уведомление.... После этого запустится мастер добавления push-уведомлений.
  2. Нажмите кнопку Далее, войдите в свою учетную запись в Магазине Windows, затем введите имя в поле Зарезервировать новое имя и нажмите Зарезервировать. После этого новое приложение будет зарегистрировано в Магазине Windows.
  3. Выберите новую регистрацию в списке Имя приложения, а затем нажмите Далее..
  4. Выберите мобильную службу, которую вы создали после изучения раздела Краткое руководство: добавление мобильной службы или Краткое руководство: добавление мобильной службы на C++, нажмите кнопку Далее, а затем нажмите Готово. Ваша мобильная служба сможет работать со службами push-уведомлений Windows (WNS), которая будет отправлять уведомления в ваше приложение.Примечание  Если подключение к мобильной службе не было заранее настроено в приложении, мастер выполнит все необходимые задачи настройки, описанные в разделе Краткое руководство: добавление мобильной службы.  
  5. Откройте созданный файл кода YourMobileService.push.register.js и проверьте код (необязательно). Этот код обеспечивает регистрацию устройства при каждой активации приложения и включает в себя вызов настраиваемого API notifyallusers.
  6. В обозревателе сервера разверните Мобильные службы, имя службы и откройте файл notifyallusers.js (необязательно). В этом файле, который сохранен в вашей мобильной службе, содержится код JavaScript, который отправляет push-уведомления всем зарегистрированным пользователям.
  7. Чтобы запустить приложение и проверить, что уведомление от мобильной службы будет получено немедленно, нажмите клавишу F5.

Обновление созданного кода push-уведомлений

Мастер добавления push-уведомлений добавляет код, который вызывает отправку тестового уведомления всем зарегистрированным пользователям. Таким образом можно легко продемонстрировать уведомление, когда приложение запущено, но этот сценарий обычно не является значимым. По сути, вы удалите вызов файла notifyallusers и замените его, с некоторыми изменениями, кодом, который отправляет уведомление на все зарегистрированные устройства, когда в таблицу TodoItem вставляется какой-либо элемент.

  1. В обозревателе серверов разверните Мобильные службы, имя своей службы и файл notifyallusers.js. В нем присутствует код, отправляющий push-уведомление. Примечание  Код, отправляющий push-уведомление, можно включить в любой зарегистрированный файл сценария. Расположение этого сценария зависит от причины отправки уведомления. Сценарии можно зарегистрировать в соответствии с операциями вставки, обновления, удаления или чтения таблицы; как повторяющееся задание или как настраиваемый API. Дополнительные сведения см. в разделе Работа с серверными сценариями в мобильных службах. В этом случае код переносится в файл сценария, зарегистрированный против операции вставки в таблицу TodoItem.

     

  2. Разверните таблицу TodoItem, откройте файл insert.js и замените текущую функцию вставки следующим кодом, а затем сохраните изменения:

    function insert(item, user, request) {
    // Define a payload for the Windows Store toast notification.
    var payload = '<?xml version="1.0" encoding="utf-8"?><toast><visual>' +    
        '<binding template="ToastText01">  <text id="1">' +
        item.text + '</text></binding></visual></toast>';
    
    request.execute({
        success: function() {
            // If the insert succeeds, send a notification.
            push.wns.send(null, payload, 'wns/toast', {
                success: function(pushResponse) {
                    console.log("Sent push:", pushResponse);
                    request.respond();
                    },              
                    error: function (pushResponse) {
                        console.log("Error Sending push:", pushResponse);
                        request.respond(500, { error: pushResponse });
                        }
                    });
                }
            });
    }
    

    При сохранении изменений в файле insert.js в вашу мобильную службу загружается новая версия сценария.

    После вставки новой таблицы TodoItem новое push-уведомление немедленно отправляется на устройство, отправившее запрос на вставку.

  3. Чтобы запустить приложение, нажмите в Visual Studio клавишу F5.

  4. В приложении введите текст в поле Вставка TodoItem, а затем нажмите Сохранить. Обратите внимание, что уведомление отправляется устройству сразу после вставки в таблицу в Azure.

  5. (Дополнительно) Запустите приложение одновременно на двух машинах и повторите предыдущий шаг. Убедитесь, что уведомление отправлено всем работающим экземплярам программы.

Краткая сводка и дальнейшие действия

Теперь вы знаете, как использовать мобильные службы для добавления push-уведомлений в приложение Магазина Windows.

Теперь можно научиться использованию мобильных служб для входа пользователей с помощью учетной записи Майкрософт, а также поставщиков удостоверений Facebook, Twitter или Google. Дополнительные сведения см. в разделе инструкций для начала работы с проверкой подлинности.

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

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

Работа с серверными сценариями в мобильных службах