org.apache.cordova.device-orientation

Questo plugin consente di accedere alla bussola del dispositivo. La bussola è un sensore che rileva la direzione o la voce che il dispositivo è puntato, in genere dalla parte superiore del dispositivo. Esso misura la rotta in gradi da 0 a 359.99, dove 0 è a nord.

Installazione

cordova plugin add org.apache.cordova.device-orientation

Piattaforme supportate

  • Amazon fuoco OS
  • Android
  • BlackBerry 10
  • Browser
  • Firefox OS
  • iOS
  • Tizen
  • Windows Phone 7 e 8 (se disponibili nell'hardware)
  • Windows 8

Metodi

  • navigator.compass.getCurrentHeading
  • navigator.compass.watchHeading
  • navigator.compass.clearWatch

navigator.compass.getCurrentHeading

Ottenere la corrente della bussola. La bussola viene restituita tramite una CompassHeading oggetto utilizzando il compassSuccess funzione di callback.

navigator.compass.getCurrentHeading (compassSuccess, compassError);

Esempio

function onSuccess(heading) {
    alert('Heading: ' + heading.magneticHeading);
};

function onError(error) {
    alert('CompassError: ' + error.code);
};

navigator.compass.getCurrentHeading(onSuccess, onError);

navigator.compass.watchHeading

Ottiene il titolo attuale del dispositivo a intervalli regolari. Ogni volta che viene recuperato il titolo, il headingSuccess viene eseguita la funzione di callback.

L‘orologio restituito ID fa riferimento l’intervallo orologio bussola. L'orologio ID può essere usato con navigator.compass.clearWatch a smettere di guardare la navigator.compass.

var watchID = navigator.compass.watchHeading(compassSuccess, compassError, [compassOptions]);

compassOptionspuò contenere i seguenti tasti:

  • frequenza: la frequenza di recuperare la bussola in millisecondi. (Numero) (Default: 100)
  • filtro: il cambiamento in gradi necessari per avviare un callback di successo watchHeading. Quando questo valore è impostato, la frequenza viene ignorata. (Numero)

Esempio

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);

Stranezze browser

I valori per la rubrica attuale sono generati casualmente al fine di simulare la bussola.

iOS stranezze

Solo un watchHeading può essere in effetti una volta in iOS. Se un watchHeading utilizza un filtro, chiamata getCurrentHeading o watchHeading utilizza il valore esistente di filtro per specificare le modifiche intestazione. Guardando i cambiamenti di direzione con un filtro è più efficiente con intervalli di tempo.

Amazon fuoco OS stranezze

  • filternon è supportato.

Stranezze Android

  • Nessun supporto perfilter.

Firefox OS stranezze

  • Nessun supporto perfilter.

Tizen stranezze

  • Nessun supporto perfilter.

Windows Phone 7 e 8 stranezze

  • Nessun supporto perfilter.

navigator.compass.clearWatch

Smettere di guardare la bussola a cui fa riferimento il parametro ID orologio.

navigator.compass.clearWatch(watchID);
  • watchID: l'ID restituito danavigator.compass.watchHeading.

Esempio

var watchID = navigator.compass.watchHeading(onSuccess, onError, options);

// ... later on ...

navigator.compass.clearWatch(watchID);

CompassHeading

A CompassHeading oggetto viene restituito alla compassSuccess funzione di callback.

Proprietà

  • magneticHeading: la rotta in gradi da 0-359.99 in un unico momento. (Numero)

  • trueHeading: la voce rispetto al Polo Nord geografico in gradi 0-359.99 in un unico momento. Un valore negativo indica che non è possibile determinare la vera voce. (Numero)

  • headingAccuracy: lo scostamento in gradi tra il titolo segnalato e la vera voce. (Numero)

  • timestamp: il tempo in cui questa voce è stata determinata. (millisecondi)

Amazon fuoco OS stranezze

  • trueHeadingnon è supportato, ma riporta lo stesso valoremagneticHeading

  • headingAccuracyè sempre 0 perché non non c'è alcuna differenza tra la magneticHeading etrueHeading

Stranezze Android

  • La trueHeading proprietà non è supportata, ma riporta lo stesso valoremagneticHeading.

  • La headingAccuracy proprietà è sempre 0 perché non non c'è alcuna differenza tra la magneticHeading etrueHeading.

Firefox OS stranezze

  • La trueHeading proprietà non è supportata, ma riporta lo stesso valoremagneticHeading.

  • La headingAccuracy proprietà è sempre 0 perché non non c'è alcuna differenza tra la magneticHeading etrueHeading.

iOS stranezze

  • La trueHeading proprietà viene restituito solo per servizi di localizzazione attivate tramitenavigator.geolocation.watchLocation().

  • Per i dispositivi iOS 4 sopra, voce fattori nell'orientamento corrente del dispositivo e non fa riferimento la sua posizione assoluta, per le app che supporta tale orientamento.

CompassError

A CompassError oggetto viene restituito alla compassError funzione di callback quando si verifica un errore.

Proprietà

  • codice: uno dei codici di errore predefiniti elencati di seguito.

Costanti

  • CompassError.COMPASS_INTERNAL_ERR
  • CompassError.COMPASS_NOT_SUPPORTED