MS Band: как я могу показать уведомление с кнопкой, которая запускает приложение?

Сценарий

В настоящее время мне поручено добавить поддержку Microsoft Band в одно из наших кросс-платформенных (C#, Swift и Java) бизнес-приложений для массового рынка.

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

Затем этот фоновый процесс должен отображать предупреждение в Microsoft Band вместе с двумя кнопками («Ответить» и «Отклонить»). Предупреждение должно исчезнуть навсегда по истечении времени ожидания, указанного приложением (15 секунд). Как тост с истекающим сроком действия в Windows 10, с настраиваемыми пользователем кнопками.

Наконец, Band должен вызвать событие в фоновом приложении при нажатии кнопки или активировать приложение и передать идентификатор, относящийся к уведомлению. Опять же, как тост можно сделать на Windows 10.

Я прочитал всю документацию Microsoft Band SDK, посмотрел видео BUILD 2015 для MSBAND, прочитал сообщения StackOverflow и т. д. Прошу прощения, если все это уже задавалось, но я не могу найти успешный ответ.

Вопросы

  1. Можно ли отображать уведомление в Microsoft Band с несколькими кнопками (как могут отображаться встроенные приложения Band)?

  2. В видеоролике BUILD 2015 докладчики указали, что приложения Windows 10 UWP смогут отправлять обратные вызовы с помощью определяемых пользователем кнопок действий: появилась ли эта функция в Windows 10 SDK? Для пользовательских кнопок уведомлений?

Я боюсь, что ответ на все вышеперечисленное — «нет», но я действительно надеюсь, что другие придумали, как это сделать. Если нет, я буду рад предоставить отзыв Phil Hoff-MSFT для будущих выпусков SDK (и мы можем отказаться от поддержки Microsoft Band для текущего выпуска).

Спасибо всем за любые/все знания сообщества, которыми вы можете поделиться здесь.


person Flint    schedule 05.02.2016    source источник


Ответы (1)


Что касается вопроса № 1, нет, невозможно показать или настроить кнопки при отправке уведомлений на Band.

Что касается вопроса № 2, хотя в настоящее время можно получать обратные вызовы для нажатий кнопок в пользовательских макетах плиток в Windows 8.1/10, приложение должно работать (на переднем плане или в фоновом режиме), быть подключенным к Band и быть подписанным на эти события, чтобы они быть полученным. Изменения платформы, внесенные в Windows 10, позволяют получать такие события, даже если приложение в данный момент не запущено, но для этого, вероятно, потребуются изменения прошивки Band, приложения Microsoft Health и SDK. Я понятия не имею, может ли это произойти и когда.

Ближе всего к вашему целевому сценарию на данный момент вы можете подойти следующим образом:

  1. Создайте плитку с пользовательским макетом, на котором есть две кнопки.

  2. Получите push-уведомление от вашего бэкэнда (обрабатывается вашим приложением в фоновом режиме).

  3. Подключиться к группе.

  4. Начните прослушивать события кнопок для вашей плитки.

  5. Отправьте новую страницу в плитку, используя свой макет.

  6. Отправить уведомление в группу (чтобы предупредить пользователя о новой странице).

  7. Подождите (до x секунд), пока пользователь перейдет на страницу и нажмет одну из кнопок.

  8. Если кнопка нажата или время истекло, удалите страницу из плитки.

  9. Отключиться от группы.

person Phil Hoff -- MSFT    schedule 05.02.2016
comment
Спасибо, Фил! Сегодня это не сработает для нашего приложения, но мы надеемся, что Band SDK получит эти новые функции в будущем. Было бы здорово поддерживать Microsoft Band на том же уровне, что и Apple Watch. - person Flint; 10.02.2016
comment
Обновление: обновление SDK для Microsoft Band за февраль 2016 г. теперь включает возможность получать обратные вызовы при нажатии кнопки плитки. Позволяет универсальным приложениям Windows Phone 10 обрабатывать события плитки в фоновом режиме. Поддерживаемые события плитки: TileOpened, TileClosed и TileButtonPressed. Эта функция снимает ограничение, согласно которому приложения Windows Phone 10 должны запускаться на переднем плане для обработки событий плитки. Подробнее см. в документации Band SDK. developer.microsoftband.com/bandSDK/ReleaseNotes - person Flint; 04.03.2016
comment
Однако обратите внимание, что новая возможность существует только для устройств Band 2, а не для оригинального Band. - person Phil Hoff -- MSFT; 04.03.2016
comment
Спасибо, что добавил это, Фил. Да, это работает :) Теперь нам просто нужна возможность отправлять уведомления в Band с помощью настраиваемых кнопок (отвечать и игнорировать) и возможность точно так же определять нажатия этих кнопок. - person Flint; 04.03.2016