Я пишу приложение в Google Android 2.1, которому необходимо знать, в каком направлении (n/w/s/e) стоит устройство (HTC Hero). Датчик и его слушатель работают отлично, но значения, которые я получаю от датчика, абсолютно дрянные. например он говорит мне, что я столкнулся с севером, когда устройство сталкивается с SW или так...
Это похоже на известную проблему с устройствами Android. "Решения", которые я нашел в Интернете, выглядят следующим образом:
- Встряхните устройство вокруг
- переместите устройство как восемь
- нажмите на устройства назад
Предполагается, что это приведет к повторной калибровке датчиков. И: вещь с "перемещением" работает для меня... но это не очень профессионально, я думаю...
так - как мне вызвать повторную калибровку датчика ориентации из SDK? Мне нужно, чтобы датчик был правильно откалиброван без каких-либо причудливых вещей, которые сделают пользователей этого приложения похожими на полных идиотов, пока они "вручную" откалибруют свои телефоны...
Есть ли способ сделать это "правильно"?
EDIT:
Или: есть ли какой-либо способ определить ПРОГРАММАТИЧЕСКИ, если устройство правильно откалибровано или нет? В качестве резервной опции, так сказать, я мог бы предупредить пользователя о необходимости "ручной" перекалибровки устройства.