Разработване на приложения за
мобилни устройства2015 1 Тема 9: ИЗПОЛЗВАНЕ НА СЕНЗОРИ: АКСЕЛЕРОМЕТЪР, КОМПАС, ЖИРОСКОП. Цели на темата: Да се представят наличните датчици и сензори в Windows Phone. Да се обяснят техните физически характеристики и начинът им на използване. Да се разгледат методите за извличане и обработване на данни от сензора. Да се представят възможностите на емулатора при използването на различните сензори.
В тази тема ще бъде разгледано:
Представяне на нанича на използване на дизайна на Sensor API
Интерпретиране на
сензорните данни
Използване на сензорите в емулатора
Преместване със сензор за движение
Можете да
направите страхотно приложение, като комбинирате сензорите с други функции на телефона. Приложенията могат да реагират на потребителското разклащане на устройството чрез случайно избиране на обект за изчистване на екрана. По време на игра, като управление, може да се използва характеристиката
преместване на устройството, като по този начин целия телефон се превръща в игрова конзола. Друг клас приложения подпомагат реалния свят с компютърно генерирана информация. Приложенията за разширена реалност могат да покажат местоположението на приятели, в близост до текущото ви местоположение. Астрономическите приложения определят позицията на вашето устройство, като по този начин се подпомага определянето на позицията на звездите на нощното небе. Туристическите приложения могат да определят
най-близките забележителности, отново спрямо позицията на устройството.
Всички тези приложения изискват сензорен вход от физическия свят. Акселерометърът на телефона, компаса и жироскопа са сензори за отчитане на данни от реалния свята, които могат след това ба бъдат обработвани в приложения чрез сензорния интерфейс (Sensor API) от Windows Phone SDK. Когато се комбинират с данни от текущото
местоположение на телефона, се получава приложение за разширена реалност (augmented-reality application).
Работата с текущото местоположение ще бъде разгледана в следващата тема.
Работата със суровите данни от сензорите може да бъде трудна – например, когато се опитваме да изчислим в каква посока е насочено устройството. Класовете
Inclinometer
(за определяне на наклона)
и
OrientationSensor взимат
входни данни от всички сензори, изпълняват няколко сложни изчисления, и осигуряват данни свързани с движението и относителното положение на устройството спрямо реалния свят.
За по-доброто разбиране на данните от различни сензори,
извлечени от реалния свят, трябва да се създаде просто приложение, което да представя данни на екрана. В първата