Датчики
ОС Аврора поддерживает следующие виды датчиков:
- акселерометр;
- датчик освещения;
- датчик приближения;
- датчик магнитных полей;
- гироскоп;
- датчик влажности;
- датчик закрытия крышки устройства;
- барометр;
- датчик приближения;
- датчик ориентации;
- датчик вращения;
- счетчик шагов;
- датчик касания;
- термометр.
Поддержка датчика в ОС Аврора основана на фреймворке датчиков sensorfw.
Фреймворк датчиков sensorfw предоставляет сервер датчика для управления HAL датчиков и средой, через которую клиентские приложения подключаются к обработчику датчика для обмена данными.
Любое приложение для получения доступа к серверу датчика и взаимодействия с ним должно использовать библиотеку API датчика. Используя API датчика, приложение может управлять датчиками и получать события с сервера датчика. Как показано на рисунке выше, любое приложение или промежуточный слой фреймворка с помощью API датчика может иметь клиентскую библиотеку датчика.
Сервер датчика является демоном, который взаимодействует с несколькими датчиками (через драйверы) в системе и передаёт данные или события датчика обратно в приложение. Сервер датчика занимается инициализацией датчиков во время загрузки, конфигурации драйвера, получения и передачи данных датчика, а также управлением всеми датчиками и клиентом на платформе.
HAL датчика, который сопряжен с сервером датчика, взаимодействует с драйверами датчиков. HAL обрабатывает данные из драйверов датчиков и передаёт их на сервер. Аппаратные датчики должны поддерживать HAL.
HAL датчиков извлекает данные из аппаратных средств датчиков и позволяет клиентским приложениям использовать специфичные требования форм данных.