Рекомендации для пользователя

В этом руководстве описаны рекомендации по созданию и обновлению действий пользователей. Общие сведения о функции действий пользователей в Windows см. в статье Продолжение действий пользователей даже на разных устройствах. Или ознакомьтесь с разделом Действия пользователей в Project Rome, чтобы узнать о реализации действий на других платформах разработки.

Примечание

С июля 2021 г. пользователи, у которых журнал действий синхронизирован на всех устройствах с Windows с использованием учетной записи Майкрософт (MSA), больше не смогут отправлять новые действия в представлении временной шкалы. У таких пользователей по-прежнему будет возможность использовать временную шкалу и просматривать историю действий (сведения о последних приложениях, веб-сайтах и файлах) на своем локальном компьютере. Это не затронет учетные записи, подключенные к AAD.

Когда следует создавать или обновлять действия пользователей

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

Общие рекомендации

  • Запишите одно действие для группы связанных действий пользователя. Это особенно актуально для музыкальных списков воспроизведения или телепередач: одно действие может обновляться через регулярные промежутки времени, чтобы отразить прогресс пользователя. В этом случае у вас будет одно действие пользователя с несколькими элементами журнала, представляющими периоды взаимодействия в течение нескольких дней или недель. То же самое относится и к действиям на основе документов, в которых пользователь выполняет постепенный прогресс в приложении.
  • Храните данные пользователей в облаке. Если вы хотите поддерживать действия на нескольких устройствах, необходимо убедиться, что содержимое, необходимое для повторного участия в этом действии, хранится в облачном расположении. Действия, относящиеся к конкретному устройству, будут отображаться на временной шкале на устройстве, где было создано действие, но могут не отображаться на других устройствах.
  • Не создавайте действия для действий, которые пользователям не нужно будет возобновлять. Если приложение используется для выполнения простых однократных операций, которые не сохраняют состояние, скорее всего, вам не нужно создавать действия пользователя.
  • Не создавайте действия для действий, выполненных другими пользователями. Если внешняя учетная запись отправляет пользователю сообщение или @-упоминает его в приложении, не следует создавать действие для этого. Этот тип действий лучше обслуживаться уведомлениями центра уведомлений.
    • Сценарии совместной работы являются исключением. Если несколько пользователей совместно работают над одним и тем же действием (например, над документом Word), будут случаи, когда другой пользователь вносил изменения после вашего пользователя. В этом случае может потребоваться обновить существующее действие, чтобы отразить изменения, внесенные в документ. Для этого потребуется обновить существующие данные содержимого действий пользователя без создания нового элемента журнала.

Рекомендации по конкретным типам приложений

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

  • Приложения на основе документов — создайте одно действие для каждого документа с одним или несколькими элементами журнала, отражающими периоды использования. Важно обновить действие по мере внесения изменений в документ.
  • Игры — создайте одно действие для каждого сохранения игры или мира. Если игра поддерживает только одну последовательность уровней, вы можете повторно опубликовать одно и то же действие с течением времени, хотя вы можете обновить данные содержимого, чтобы показать последние ход выполнения или достижения.
  • Служебные приложения . Если в приложении нет ничего, что пользователям не нужно было бы покидать и возобновлять, вам не нужно использовать действия пользователей. Хорошим примером является простое приложение, например Калькулятор.
  • Бизнес-приложения — существует множество приложений для управления простыми задачами или рабочими процессами. Создайте одно действие для каждого отдельного рабочего процесса, доступ к которому осуществляется через приложение (например, отчеты о расходах будут отдельными действиями, чтобы пользователь мог щелкнуть действие, чтобы узнать, утвержден ли определенный отчет).
  • Приложения для воспроизведения мультимедиа — создайте одно действие для каждой логической группировки содержимого (например, списка воспроизведения, программы или автономного содержимого). Основной вопрос для разработчиков приложений заключается в том, считается ли каждый фрагмент содержимого (телевизионный эпизод, песня) автономным контентом или частью коллекции. Как правило, если пользователь выбирает воспроизведение коллекции или последовательного содержимого, то действием является коллекция в целом. Если они предпочитают воспроизводить один фрагмент содержимого, то это действие. Дополнительные рекомендации см. ниже.
    • Музыка: альбом/исполнитель/жанр — если пользователь выбирает альбом, исполнитель или жанр и воспроизводит хиты, эта коллекция является действием; не писать отдельное действие для каждой песни. Для коротких коллекций, таких как один альбом или коллекции, воспроизводимые в случайном порядке, может не потребоваться обновлять действие, чтобы отразить текущее положение пользователя. При длительном последовательном воспроизведении, например альбоме или списке воспроизведения, запись вашей позиции в альбоме может быть целесообразной.
    • Музыка: интеллектуальные списки воспроизведения . Приложения, которые в случайном порядке вступают в музыку, должны записывать одно действие для этого списка воспроизведения. Если пользователь воспроизводит список воспроизведения во второй раз, необходимо создать дополнительные записи журнала для того же действия. Запись текущей позиции пользователя в списке воспроизведения не требуется, так как порядок является случайным.
    • Сериал — если приложение настроено для воспроизведения следующего эпизода после завершения текущего, необходимо написать одно действие для сериала. При воспроизведении различных эпизодов в нескольких сеансах просмотра вы обновите действие, чтобы отразить текущую позицию в серии, и будет создано несколько записей журнала.
    • Фильм — это отдельный фрагмент содержимого, который должен иметь собственную историю. Если пользователь перестает смотреть фильм частично, желательно записать его положение. Если он хочет возобновить его в будущем, действие может возобновить фильм, где он остался, или даже спросить пользователя, если он хочет возобновить или начать в начале.

Проектирование действий пользователей

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

  • URI активации — это URI, который можно передать приложению или интерфейсу для возобновления работы приложения с определенным контекстом. Как правило, эти ссылки принимают форму обработчика протокола для схемы (например, "my-app://page2?action=edit"). Разработчик должен определить, как параметры URI будут обрабатываться приложением. Дополнительные сведения см. в разделе Обработка активации URI .
  • Визуальные данные, состоящие из набора обязательных и необязательных свойств (например, название, описание или элементы адаптивной карточки), позволяют пользователям визуально идентифицировать действие. Рекомендации по созданию визуальных элементов адаптивной карточки для действия см. ниже.
  • Метаданные содержимого — это данные JSON, которые можно использовать для группирования и извлечения действий в определенном контексте. Как правило, это происходит в виде http://schema.org данных. Рекомендации по заполнению этих данных см. ниже.

Рекомендации по проектированию адаптивных карточек

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

Разработчикам приложений рекомендуется предоставлять пользовательские карточки с помощью простой схемы JSON адаптивной карточки. Технические инструкции по созданию объектов адаптивных карточек см. в документации по адаптивным карточкам . Ознакомьтесь с приведенными ниже рекомендациями по разработке адаптивных карточек в действиях пользователей.

  • Использование изображений
    • Используйте уникальный образ для каждого действия, если это возможно. Имя и значок приложения будут автоматически отображаться рядом с карта действия. Дополнительные изображения помогут пользователям найти нужное действие.
    • Изображения не должны содержать текст, который пользователь должен прочитать. Этот текст не будет доступен пользователям со специальными возможностями и не может выполняться поиск.
    • Если изображение не содержит текста и может быть обрезано примерно до 2:1, его следует использовать в качестве фонового изображения. Это приводит к выделению полужирного карта действия, которое будет выделяться на временной шкале. Изображение будет немного затемнено, чтобы текст оставался видимым на карта, и в этом случае рекомендуется использовать только имя действия, так как текст меньшего размера может стать трудно читать.
    • Если изображение не может быть обрезано до 2:1, его следует поместить в карточку действия.
      • Если пропорции квадратные или книжные, прикрепите изображение в правой части карта без полей.
      • Если пропорции — Альбомная, прикрепите изображение к правому верхнему углу карта.
  • Каждое действие требуется для предоставления имени действия, которое всегда должно отображаться.
    • Это имя должно отображаться в левом верхнем углу карта с использованием большого полужирного текста. Важно, чтобы имя было легко узнаваемым, так как это единственная часть, которую пользователи увидят при отображении действия в сценариях Кортаны. Отображение того же имени на временной шкале упрощает пользователям просмотр большого количества действий.
  • Используйте один и тот же визуальный стиль для всех действий из приложения, чтобы пользователи могли легко находить действия вашего приложения на временной шкале.
    • Например, все действия должны использовать один и тот же цвет фона.
  • Используйте дополнительные текстовые сведения с осторожностью.
    • Избегайте заполнения карта текстом и используйте только дополнительные сведения, которые помогают пользователям находить нужные действия или отражают сведения о состоянии (например, текущий ход выполнения конкретной задачи).

Рекомендации по метаданным содержимого

Действия пользователей также могут содержать метаданные содержимого, которые Windows и Кортана используют для классификации действий и создания выводов. Затем действия можно сгруппировать по определенной теме, например по расположению (если пользователь изучает отпуск), объекте (если пользователь что-то изучает) или действии (если пользователь покупает определенный продукт в разных приложениях и на веб-сайтах). Рекомендуется представлять как существительные, так и глаголы, участвующие в действии.

В следующем примере json метаданных содержимого в соответствии со стандартами Schema.org представляет сценарий: "Джон играл Angry Birds со Стивом".

// John played angry birds with Steve.
{
  "@context": "http://schema.org",
  "@type": "PlayAction",
  "agent": {
    "@type": "Person",
    "name": "John"
  },
  "object": {
    "@type": "MobileApplication",
    "name": "Angry Birds."
  },
  "participant": {
    "@type": "Person",
    "name": "Steve"
  }
}

Основные API-интерфейсы