cordova-plugin-device-orientation
Este plugin proporciona acceso al compás del dispositivo. La brújula es un sensor que detecta la dirección o rumbo que el dispositivo está apuntado, normalmente desde la parte superior del dispositivo. Mide el rumbo en grados de 0 a 359.99, donde 0 es el norte.
El acceso es por un global navigator.compass objeto.
Aunque el objeto está unido al ámbito global navigator , no estará disponible hasta después de la deviceready evento.
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
console.log(navigator.compass);
}
Instalación
cordova plugin add cordova-plugin-device-orientation
Plataformas soportadas
- Amazon fire OS
- Android
- BlackBerry 10
- Explorador
- Firefox OS
- iOS
- Tizen
- Windows Phone 7 y 8 (si está disponible en el hardware)
- Windows 8
Métodos
- navigator.compass.getCurrentHeading
- navigator.compass.watchHeading
- navigator.compass.clearWatch
navigator.compass.getCurrentHeading
Conseguir el actual rumbo de la brújula. El rumbo de la brújula es devuelto vía un CompassHeading objeto usando la compassSuccess función de callback.
navigator.compass.getCurrentHeading(compassSuccess, compassError);
Ejemplo
function onSuccess(heading) {
alert('Heading: ' + heading.magneticHeading);
};
function onError(error) {
alert('CompassError: ' + error.code);
};
navigator.compass.getCurrentHeading(onSuccess, onError);
navigator.compass.watchHeading
Obtiene el título actual del dispositivo a intervalos regulares. Cada vez que se recupera el título, el headingSuccess se ejecuta la función callback.
El identificador devuelto reloj referencias el intervalo reloj brújula. El reloj ID puede utilizarse con navigator.compass.clearWatch para dejar de ver la navigator.compass.
var watchID = navigator.compass.watchHeading(compassSuccess, compassError, [compassOptions]);
compassOptionspuede contener las siguientes claves:
- frecuencia: frecuencia con la que recuperar el rumbo de la brújula en milisegundos. (Número) (Por defecto: 100)
- filtro: el cambio de grados necesarios para iniciar una devolución de llamada de éxito watchHeading. Cuando se establece este valor, frecuencia es ignorado. (Número)
Ejemplo
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);
Navegador rarezas
Los valores de partida actual son generados al azar para simular la brújula.
iOS rarezas
Solamente un watchHeading puede ser en efecto a la vez en iOS. Si un watchHeading utiliza un filtro, llamando a getCurrentHeading o watchHeading utiliza el valor existente del filtro para especificar los cambios de rumbo. Observando los cambios de rumbo con un filtro es más eficiente que con intervalos de tiempo.
Amazon fuego OS rarezas
filterNo se admite.
Rarezas Android
- No hay soporte para
filter.
Firefox OS rarezas
- No hay soporte para
filter.
Rarezas Tizen
- No hay soporte para
filter.
Windows Phone 7 y 8 rarezas
- No hay soporte para
filter.
navigator.compass.clearWatch
Deja de mirar la brújula al que hace referencia el parámetro ID de reloj.
navigator.compass.clearWatch(watchID);
- watchID: el identificador devuelto por
navigator.compass.watchHeading.
Ejemplo
var watchID = navigator.compass.watchHeading(onSuccess, onError, options);
// ... later on ...
navigator.compass.clearWatch(watchID);
CompassHeading
A CompassHeading objeto es devuelto a la compassSuccess función de callback.
Propiedades
-
magneticHeading: el rumbo en grados de 0-359.99 en un solo momento. (Número)
-
trueHeading: el título en relación con el polo norte geográfico en grados 0-359.99 en un solo momento. Un valor negativo indica que no se puede determinar el rumbo verdadero. (Número)
-
headingAccuracy: la desviación en grados entre el rumbo divulgado y el rumbo verdadero. (Número)
-
timestamp: el momento en el cual se determinó esta partida. (milisegundos)
Amazon fuego OS rarezas
-
trueHeadingNo es compatible, pero el mismo valor que los informesmagneticHeading -
headingAccuracyes siempre 0 porque no hay ninguna diferencia entre elmagneticHeadingytrueHeading
Rarezas Android
-
El
trueHeadingpropiedad no es compatible, pero el mismo valor que los informesmagneticHeading. -
El
headingAccuracypropiedad es siempre 0 porque no hay ninguna diferencia entre elmagneticHeadingytrueHeading.
Firefox OS rarezas
-
El
trueHeadingpropiedad no es compatible, pero el mismo valor que los informesmagneticHeading. -
El
headingAccuracypropiedad es siempre 0 porque no hay ninguna diferencia entre elmagneticHeadingytrueHeading.
iOS rarezas
-
El
trueHeadingpropiedad es devuelto sólo para servicios de localización habilitados mediantenavigator.geolocation.watchLocation(). -
Para los dispositivos iOS 4 arriba, rumbo factores en la orientación actual del dispositivo y no hace referencia a su posición absoluta, para aplicaciones que apoya esa orientación.
CompassError
A CompassError objeto es devuelto a la compassError función de devolución de llamada cuando se produce un error.
Propiedades
- code: uno de los códigos de error predefinido enumerados a continuación.
Constantes
CompassError.COMPASS_INTERNAL_ERRCompassError.COMPASS_NOT_SUPPORTED