В Windows 10 мы крайне рады возможности представить ряд новых API для взаимодействия с контекстом, которые могут помочь вам в создании приложений, улучшающих жизнь пользователей каждый день. Это включает приложения, которые могут определять присутствие, когда пользователь приближается к устройствам, приложения, которые понимают, гуляет ли пользователь или за рулем, приложения, которые помогают пользователям отслеживать их фитнес-показатели, и многие другие сценарии. Используя данные API вы можете предугадывать потребности пользователей и проактивно предлагать соответствующие персонализированные и релевантные данные или сервисы для улучшения и облегчения их жизни. Это довольно мощная штука как для консьюмерских, так и для корпоративных сценариев.
_mini_oszone.png)
Увеличить
Определение типа активности
Один из новых добавленных API – это средства для определения типа активности (Activity Detection), которые помогает выяснить контекст (пере)движения пользователя. Данные API пытаются понять, что делает человек на основании текущего характера движения: идет, бежит, едет в машине или на велосипеде, находится в неподвижном состоянии или состоянии «покоя». Неподвижное состояние возвращается, когда устройство находится с пользователем, а «покой» — когда пользователь положил устройство на стол или неподвижную поверхность. Вы также можете создавать фоновые триггеры и запрашивать детальную историю вплоть до 30-дневной давности.
Несколько сценариев для использования:
- Выдавать информацию в зависимости от контекста движения (например, подстраивать темп плейлиста)
- Изменять поведение приложения с учетом контекста движения (например, автоматически подстраивать фокус, если вы понимаете, что пользователь снимает на камеру во время ходьбы или бега)
- Отслеживание фитнес-показателей и данных о здоровье
- Навигация и карты
- Сохранение энергии (например, избегать постоянного опроса местоположения или WiFi, если устройство находится в состоянии покоя или стационарном состоянии)
Схема работы с API приведена ниже:
Более детально API для определения типа активности описаны в MSDN, а пример кода можно найти в коллекции UWP SDK примеров.
Подсчет шагов
Другое полезное добавление – это шагомер, который подсчитывает количество шагов пользователя во время ходьбы или бега. Как и в случае с определением типа активности, информация в истории хранится вплоть до 30 дней.
Типичное приложение, в которой данная функциональность может использоваться – это отслеживание показателей здоровья и фитнес-данных (без необходимости использования дополнительных (носимых) устройств). Шагомер может также комбинировать данные носимых устройств и данные от сенсоров устройства с Windows.
Пример работы с API приведен ниже:
Более подробная информация про API работы с шагомером приведена в MSDN, а готовый пример кода доступен в коллекции примеров.
Барометр и сенсор высоты
Для работы с информацией о давлении (данные от барометра) и относительной высотой (например, изменение при подъеме) мы добавили, соответственно, API барометра и высоты.
Типичные сценарии:
- Здоровье и фитнес: зная относительную высоту, вы можете понять, движется ли пользователь вверх или вниз и учитывать это при подсчете затрат калорий
- Определять, на какой этаже находится пользователь при навигации в помещении
- Предсказание погоды
Пример работы с API:
Дополнительные сведения:
Определение присутствия
Мы теперь также поддерживаем API для определения присутствия с близким и дальними радиусами действия. Сенсоры близкого действия работают на расстоянии 2-3см, в дальнего – могут определять присутствие на расстоянии вплоть до 12 метров.
Практические сценарии:
- Активация устройства при приближении пользователя или выключение, когда пользователь удаляется. Например, Surface Hub использует данные API, чтобы просыпаться, когда человек входит в комнату для переговоров, и выключаться, когда все люди вышли.
- Автоматически выключать экран во время звонка
- Определять и игнорировать случайные нажатия, когда становится понятно, что устройство находится в кармане пользователя
- Определение жестов
Пример работы с API близости приведен ниже: