Пожалуйста, посмотрите код от здесь .
Чтобы суммировать код в приведенной выше ссылке, код объявляет интерфейс "OrientationListener" и "класс" OrientationManager ". OrientationManager прослушивает SensorEvent и вызывает один из четырех декальдированных методов в OrientationListenor, onTopUp (), onRightUp (), onBottomUp () и onLeftUp (), если верхняя, правая, нижняя или левая сторона устройства направлены вверх.
Это прекрасно работает, если вы предполагаете, что пользователи используют свои устройства только так, чтобы координаты xy устройства были параллельны земле. Реальность такова, что пользователи обычно используют свое устройство по усмотрению ангела, сидя или лежа, держа телефон вверх ногами.
Как я могу изменить этот код, чтобы пользователи могли "калибровать" свой телефон?
Помощь очень ценится, это мой второй день, изучающий это безрезультатно.