Dieses Plugin ermöglicht den Zugriff auf das Gerät Kompass. Der Kompass ist ein Sensor, der erkennt die Richtung oder Position, dass das Gerät in der Regel von der Oberseite des Geräts gezeigt wird. Er misst die Überschrift im Grad von 0 bis 359.99, 0 wo Norden ist.
Der Zugang ist über eine globale navigator.compass-Objekt.
Obwohl das Objekt mit der globalen Gültigkeitsbereich navigator verbunden ist, steht es nicht bis nach dem Deviceready-Ereignis.
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
console.log(navigator.compass);
}
cordova plugin add cordova-plugin-device-orientation
Erhalten Sie aktuelle Kompassrichtung. Die Kompassrichtung wird über ein CompassHeading-Objekt mithilfe der compassSuccess-Callback-Funktion zurückgegeben.
navigator.compass.getCurrentHeading(compassSuccess, compassError);
function onSuccess(heading) {
alert('Heading: ' + heading.magneticHeading);
};
function onError(error) {
alert('CompassError: ' + error.code);
};
navigator.compass.getCurrentHeading(onSuccess, onError);
Ruft das Gerät an den aktuellen Kurs in regelmäßigen Abständen. Jedes Mal, wenn die Überschrift abgerufen wird, wird die Callback-Funktion headingSuccess ausgeführt.
Die zurückgegebenen Watch-ID verweist das Kompass-Uhr-Intervall. Die Uhr ID mit navigator.compass.clearWatch einsetzbar, um gerade die navigator.compass zu stoppen.
var watchID = navigator.compass.watchHeading(compassSuccess, compassError, [compassOptions]);
compassOptions enthalten die folgenden Schlüssel:
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);
Werte für aktuelle Überschrift werden nach dem Zufallsprinzip generiert, um den Kompass zu simulieren.
Nur ein watchHeading kann in der Tat auf einmal in iOS sein. Wenn ein watchHeading einen Filter verwendet, wird durch Aufrufen von getCurrentHeading oder watchHeading den vorhandenen Filterwert Überschrift Änderungen angegeben. Überschrift Veränderungen beobachten, mit einem Filter ist effizienter als mit Zeitintervallen.
filterwird nicht unterstützt.filter.filter.filter.filter.Stoppen Sie, beobachten den Kompass auf der Watch-ID-Parameter verweist.
navigator.compass.clearWatch(watchID);
navigator.compass.watchHeading.var watchID = navigator.compass.watchHeading(onSuccess, onError, options); // ... later on ... navigator.compass.clearWatch(watchID);
Ein CompassHeading-Objekt wird an die compassSuccess-Callback-Funktion zurückgegeben.
MagneticHeading: die Überschrift in Grad von 0-359.99 zu einem einzigen Zeitpunkt. (Anzahl)
TrueHeading: die Überschrift im Verhältnis zu den geografischen Nordpol in Grad 0-359.99 zu einem einzigen Zeitpunkt. Ein negativer Wert bedeutet, dass die wahre Überschrift nicht bestimmt werden kann. (Anzahl)
HeadingAccuracy: die Abweichung in Grad zwischen der gemeldeten Überschrift und die wahre Richtung. (Anzahl)
Timestamp: die Zeit, an dem dieser Rubrik bestimmt war. (Millisekunden)
trueHeadingwird nicht unterstützt, aber meldet den gleichen Wert wiemagneticHeading
headingAccuracyist immer 0 da es keinen Unterschied zwischen gibt der magneticHeading undtrueHeading
Die trueHeading -Eigenschaft wird nicht unterstützt, jedoch meldet den gleichen Wert wiemagneticHeading.
Die headingAccuracy -Eigenschaft ist immer 0 da es keinen Unterschied zwischen gibt der magneticHeading undtrueHeading.
Die trueHeading -Eigenschaft wird nicht unterstützt, jedoch meldet den gleichen Wert wiemagneticHeading.
Die headingAccuracy -Eigenschaft ist immer 0 da es keinen Unterschied zwischen gibt der magneticHeading undtrueHeading.
trueHeading -Eigenschaft nur für Ortungsdienste aktiviert über zurückgegebennavigator.geolocation.watchLocation().Ein CompassError-Objekt wird an die compassError-Callback-Funktion zurückgegeben, wenn ein Fehler auftritt.
CompassError.COMPASS_INTERNAL_ERRCompassError.COMPASS_NOT_SUPPORTED