Я получил от этого класса SensorManager. Если это помогает, here.
общественность статического поплавок [] GetOrientation (плавать [] R, плавать [] значение)
Добавлен в уровне API 3 вычисляет ориентацию устройства, основанную на матрице вращения.
Когда он возвращает значение массива заполняется результат:
значения [0]: азимут, вращение вокруг оси Z. значения 1: шаг, вращение вокруг оси X. значения [2]: рулон, вращение вокруг оси Y. Используемая эталонная система координат отличается от мировой системы координат, определенной для матрицы вращения:
X определяется как векторное произведение YZ (оно касательно к земле в текущем местоположении устройства и примерно на Западе) , Y является касательным к земле в текущем местоположении устройства и указывает на магнитный Северный полюс. Z указывает на центр Земли и перпендикулярно земле. Диаграмма координат системы инвертированного мира. Все три угла сверху находятся в радианах и положительны в направлении против часовой стрелки.
Параметры R матрица вращения см. GetRotationMatrix (float [], float [], float [], float []). присваивает массив из 3 поплавков для хранения результата. Возвращает Значения массива, переданные как аргумент.
см [Проверка ориентации на телефон Android] (http://stackoverflow.com/questions/2795833/check-orientation-on-android-phone) – ddz
Пейзаж/Портрет отличается от угла поворота. Нет никакого «легкого» способа получить точный угол, и наилучшие способы включают использование датчиков. Если вы в порядке с 0/90/180/270, вы можете использовать 'Display.getRotation()'. – Geobits
@ Гебиц посмотрел на это. На самом деле было бы полезно, если бы моя активность не была закрыта для портрета:/ – Rob