Трек Акселерометр под экраном блокировки - PullRequest
4 голосов
/ 11 ноября 2010

Можно ли отслеживать значение акселерометра под экраном блокировки?

Мне удалось написать простое приложение, которое считает от 1 до 100, используя таймер, который запускает событие, в котором я увеличиваю счетчик.

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

Ответы [ 3 ]

3 голосов
/ 02 апреля 2012

документация msdn на одной странице гласит: http://msdn.microsoft.com/en-us/library/windowsphone/develop/ff941090(v=vs.105).aspx "Допустимые причины отключения обнаружения простоя в приложениях Windows Phone OS 7.1 включают в себя те, в которых основные функции сохраняются, пока телефон заблокирован (например, приложение для отслеживания тренировок).) "

, но API-интерфейс датчика также сообщает: http://msdn.microsoft.com/en-us/library/windowsphone/develop/hh202968(v=vs.105).aspx

" Нельзя использовать API-интерфейсы датчика, когда приложение работает под экраном блокировки. Для получения дополнительной информации см. Обнаружение простоя для WindowsТелефон. Сенсорные API также нельзя использовать в фоновых агентах. Для получения дополнительной информации см. Обзор фоновых агентов для Windows Phone "

Я надеюсь, что они скоро изменят API, потому что невозможно написать какие-либохорошее отслеживание сна / спортивные отслеживания приложений ... :(

1 голос
/ 12 ноября 2010

Я помогал парню с этим пару дней назад. У него было приложение, которое отслеживает данные GPS и акселерометр под экраном блокировки.

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

Здесь может быть проблема, которую нужно рассмотреть.

Под экраном блокировки рекомендуется минимизировать энергопотребление ... отключить весь ненужный код, например обновления пользовательского интерфейса. Мое понимание одного из мотивов для обнаружения простоя и запуска под экраном блокировки, открываемого во время CTP, было ответом на множество отзывов от разработчиков приложений для карт / отслеживания, которым это в основном нужно для того, чтобы их приложение имело какое-либо применение.

0 голосов
/ 11 ноября 2010

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

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

Если бы вы хотели данные акселерометра, я бы предположил, что устройство удерживается и, следовательно, предположительно, посмотрел. Учитывая это, почему вы хотите запустить под экраном блокировки?

При этом, если у вас была веская причина для этого, вы все равно должны знать, что:

когда ваше приложение работает под заблокированным экраном, оно ... должно свести к минимуму энергопотребление

(из Требования к сертификации на торговой площадке .)

В моем понимании считывание значений с датчиков не сводит к минимуму энергопотребление.

...