# 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`