8.6 KiB
cordova-plugin-device-orientation
Этот плагин обеспечивает доступ к устройства компас. Компас-это датчик, который определяет направление или заголовок, что устройство указывает, как правило в верхней части устройства. Он измеряет направление в градусах от 0 до 359,99 градусов, где 0 — север.
Установка
cordova plugin add cordova-plugin-device-orientation
Поддерживаемые платформы
- Amazon Fire OS
- Android
- BlackBerry 10
- Обозреватель
- Firefox OS
- iOS
- Tizen
- Windows Phone 7 и 8 (при наличии оборудования)
- Windows 8
Методы
- navigator.compass.getCurrentHeading
- navigator.compass.watchHeading
- navigator.compass.clearWatch
navigator.compass.getCurrentHeading
Получите текущий курс. Курс возвращается через CompassHeading
объекта с помощью compassSuccess
функции обратного вызова.
navigator.compass.getCurrentHeading (compassSuccess, compassError);
Пример
function onSuccess(heading) {
alert('Heading: ' + heading.magneticHeading);
};
function onError(error) {
alert('CompassError: ' + error.code);
};
navigator.compass.getCurrentHeading(onSuccess, onError);
navigator.compass.watchHeading
Получает текущий заголовок устройства в регулярном интервале. Каждый раз, когда извлекаются заголовок, headingSuccess
выполняется функция обратного вызова.
Идентификатор возвращаемой смотреть ссылки компас часы интервал. Часы, ID может быть использован с navigator.compass.clearWatch
чтобы остановить просмотр navigator.compass.
var watchID = navigator.compass.watchHeading(compassSuccess, compassError, [compassOptions]);
compassOptions
может содержать следующие разделы:
- Частота: как часто получить курс в миллисекундах. (Число) (По умолчанию: 100)
- Фильтр: изменения в градусах, требуемых для инициирования обратного вызова watchHeading успех. Если это значение задано, Частота учитывается. (Число)
Пример
function onSuccess(heading) {
var element = document.getElementById('heading');
element.innerHTML = 'Heading: ' + heading.magneticHeading;
};
function onError(compassError) {
alert('Compass error: ' + compassError.code);
};
var options = {
frequency: 3000
}; // Update every 3 seconds
var watchID = navigator.compass.watchHeading(onSuccess, onError, options);
Браузер причуды
Для того, чтобы имитировать компас генерируются случайным образом значения для текущего заголовка.
Особенности iOS
Только один watchHeading
может быть в одно время эффекта в iOS. Если watchHeading
использует фильтр, вызов getCurrentHeading
или watchHeading
для указания изменения заголовка используется существующее значение фильтра. Наблюдая изменения заголовка с помощью фильтра является более эффективным, чем с интервалов времени.
Особенности Amazon Fire OS
filter
не поддерживается.
Особенности Android
- Поддержка отсутствует
filter
.
Особенности Firefox OS
- Поддержка отсутствует
filter
.
Особенности Tizen
- Поддержка отсутствует
filter
.
Особенности Windows Phone 7 и 8
- Поддержка отсутствует
filter
.
navigator.compass.clearWatch
Перестать смотреть компас, на который ссылается параметр ID смотреть.
navigator.compass.clearWatch(watchID);
- watchID: идентификатор, возвращенный
navigator.compass.watchHeading
.
Пример
var watchID = navigator.compass.watchHeading(onSuccess, onError, options);
// ... later on ...
navigator.compass.clearWatch(watchID);
CompassHeading
A CompassHeading
объект возвращается к compassSuccess
функции обратного вызова.
Параметры
-
magneticHeading: направление в градусах от 0-359,99 в один момент времени. (Число)
-
trueHeading: заголовок относительно географического Северного полюса в градусах 0-359,99 в один момент времени. Отрицательное значение указывает, что заголовок правда не может быть определено. (Число)
-
headingAccuracy: отклонение в градусах между сообщил заголовок и заголовок верно. (Число)
-
отметка времени: время, на котором был определен этот заголовок. (в миллисекундах)
Особенности Amazon Fire OS
-
trueHeading
не поддерживается, но сообщает то же значениеmagneticHeading
-
headingAccuracy
Это всегда 0 потому, что нет никакой разницы междуmagneticHeading
иtrueHeading
Особенности Android
-
trueHeading
Свойство не поддерживается, но сообщает то же значениеmagneticHeading
. -
headingAccuracy
Свойство всегда имеет 0 потому, что нет никакой разницы междуmagneticHeading
иtrueHeading
.
Особенности Firefox OS
-
trueHeading
Свойство не поддерживается, но сообщает то же значениеmagneticHeading
. -
headingAccuracy
Свойство всегда имеет 0 потому, что нет никакой разницы междуmagneticHeading
иtrueHeading
.
Особенности iOS
-
trueHeading
Свойства возвращается только для служб определения местоположения включена черезnavigator.geolocation.watchLocation()
. -
Для устройств iOS 4 и выше заголовок факторы в текущей ориентации устройства и не ссылаться на его абсолютное положение, для приложений, которые поддерживает эту ориентацию.
CompassError
A CompassError
объект возвращается к compassError
функцию обратного вызова при возникновении ошибки.
Параметры
- code: один из стандартных кодов ошибок, перечисленных ниже.
Константы
CompassError.COMPASS_INTERNAL_ERR
CompassError.COMPASS_NOT_SUPPORTED