Взаимодействие с пользователями через живые плитки и уведомления

OSzone.net » Microsoft » Разработка приложений » Windows 10 » Windows 10 по 10 » Взаимодействие с пользователями через живые плитки и уведомления
Автор: Константин Кичинский
Иcточник: msdn.microsoft.com
Опубликована: 20.01.2016

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

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


Новые возможности:

*
Увеличить



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

Отправка адаптивных и интерактивных уведомлений


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

<toast>
  <visual>
    <binding template="ToastGeneric">
      <text>Sample</text>
      <text>This is a simple toast notification example</text>
      <image placement="AppLogoOverride" src="oneAlarm.png" />
    </binding>
  </visual>
  <actions>
    <action content="check" arguments="check" imageUri="check.png" />
    <action content="cancel" arguments="cancel" />
  </actions>
  <audio src="ms-winsoundevent:Notification.Reminder"/>
</toast>


*

Как было упомянуто, такие интерактивные элементы могут использоваться для запуска кода через фоновые задачи вашего приложения, чтобы пользователи могли оставаться в текущем контексте, но при этом имели возможность взаимодействовать с вашим приложением. Для этого вам нужно объявить новую фоновую задачу в Package.appxmanifest, используя новый тип “Push notification”:

*
Увеличить


В самой фоновой задаче вы теперь можете обрабатывать предопределенные аргументы и пользовательский ввод следующим образом:

namespace Tasks
{
    public sealed class ToastHandlerTask : IBackgroundTask
    {
        public void Run(IBackgroundTaskInstance taskInstance)
        {
            //Retrieve and consume the pre-defined
            //arguments and user inputs here
            var details = taskInstance.TriggerDetails as NotificationActionTriggerDetails;
            var arguments = details.Arguments;
            var input = details.Input.Lookup("1");
            // ...
        }
    }
}

Более подробно работа с адаптивными и интерактивными уведомлениями описана в соответствующей статье команды плиток и уведомлений.

Реализация адаптивных живых плиток

Аналогично уведомлениям, при работе с живыми плитками в Windows 10 у вас также есть гибкость в визуализации плиток через язык разметки. Раньше вам нужно было выбрать шаблон плитки из каталога шаблонов для предыдущих версий Windows. Адаптивная природа живых плиток теперь позволяет вам группировать контент, так чтобы Windows могла автоматически подстраивать количество показываемой на плитке информации под экран текущего устройства.

Как пример, в приложении, отображающем письма на живой плитке, вы можете решить показывать превью одного письма на плитке в маленьких телефонных экранах и показывать превью двух писем на больших экранах, просто группируя письма в единой разметке:

...
<binding template="TileWide" branding="nameAndLogo">
  <group>
    <subgroup>
      <text hint-style="subtitle">Jennifer Parker</text>
      <text hint-style="captionSubtle">Photos from our trip</text>
      <text hint-style="captionSubtle">Check out these awesome photos I took while in New Zealand!</text>
    </subgroup>
  </group>

  <text />

  <group>
    <subgroup>
      <text hint-style="subtitle">Steve Bosniak</text>
      <text hint-style="captionSubtle">Build 2015 Dinner</text>
      <text hint-style="captionSubtle">Want to go out for dinner after Build tonight?</text>
    </subgroup>
  </group>
</binding>
...


*

Как показано в примере выше, живые плитки теперь могут быть полностью определены в разметке, что отличается от предыдущего подхода генерации изображения (из XAML) и отправки его для отображения живой плитки. Скажем, вы хотите, чтобы живая плитка отображала изображение, обрезанное по кругу с двумя большими подписями внизу. Вы легко можете это описать:

...
<binding template="TileLarge" hint-textStacking="center">
  <group>
    <subgroup hint-weight="1"/>
    <subgroup hint-weight="2">
      <image src="Assets/Apps/Hipstame/hipster.jpg" hint-crop="circle"/>
    </subgroup>
    <subgroup hint-weight="1"/>
  </group>

  <text hint-style="title" hint-align="center">Hi,</text>
  <text hint-style="subtitleSubtle" hint-align="center">MasterHip</text>
</binding>
...

*

Более детально работа с адаптивными плитками и новых языком разметки описана в статье “ Adaptive Tile Templates — Schema and Documentation”.

Новый совет: проведите немного времени настраивая живые плитки вашего приложения, чтобы порадовать пользователей.


Надеемся, мы смогли дать краткий, но достаточный обзор улучшений, которые мы сделали, чтобы помочь вам лучше взаимодействовать с пользователями через живые плитки и уведомления в Windows 10. Наша новая порция советов:

  1. Подумайте, как вы можете использовать новый язык разметки живых плиток в вашем приложении, чтобы сделать красивые плитки, радующие ваших пользователей.
  2. Если информация, отображаемая на плитке, может быть сгруппирована, убедитесь, что вы используете адаптивные плитки, чтобы подстроиться под пользователей устройств с экранами с высоким разрешением.
  3. Начните использовать новые интерактивные возможности уведомлений, чтобы расширить ваши текущие уведомления, добавив дополнительную информацию и возможность взаимодействия с пользователями.


Кстати, не забудьте про новую активность “ It’s ALIVE!!!” в DVLUP, через которую вы можете заработать очки и XP за обновлением вашего приложения (это помимо улучшения взаимодействия с пользователями).

Наконец, ниже мы приводим ссылки на дополнительные ресурсы для погружения в тему настоящей статьи.


Ссылка: http://www.oszone.net/28699/