Cordova - Geräteorientierung
Kompass wird verwendet, um die Richtung relativ zum geografischen nördlichen Kardinalpunkt anzuzeigen.
Schritt 1 - Installieren Sie das Geräteorientierungs-Plugin
Öffne das command prompt Fenster und führen Sie Folgendes aus.
C:\Users\username\Desktop\CordovaProject>cordova plugin
add cordova-plugindevice-orientation
Schritt 2 - Schaltflächen hinzufügen
Dieses Plugin ähnelt dem accelerationPlugin. Lassen Sie uns nun zwei Schaltflächen erstellenindex.html.
<button id = "getOrientation">GET ORIENTATION</button>
<button id = "watchOrientation">WATCH ORIENTATION</button>
Schritt 3 - Ereignis-Listener hinzufügen
Jetzt werden wir hinzufügen event listeners in der onDeviceReady Funktion in index.js.
document.getElementById("getOrientation").addEventListener("click", getOrientation);
document.getElementById("watchOrientation").addEventListener("click", watchOrientation);
Schritt 4 - Funktionen erstellen
Wir werden zwei Funktionen erstellen; Die erste Funktion generiert die aktuelle Beschleunigung und die andere überprüft die Orientierungsänderungen. Sie können sehen, dass wir die verwendenfrequency Option erneut, um Änderungen zu überwachen, die alle drei Sekunden auftreten.
function getOrientation() {
navigator.compass.getCurrentHeading(compassSuccess, compassError);
function compassSuccess(heading) {
alert('Heading: ' + heading.magneticHeading);
};
function compassError(error) {
alert('CompassError: ' + error.code);
};
}
function watchOrientation(){
var compassOptions = {
frequency: 3000
}
var watchID = navigator.compass.watchHeading(compassSuccess,
compassError, compassOptions);
function compassSuccess(heading) {
alert('Heading: ' + heading.magneticHeading);
setTimeout(function() {
navigator.compass.clearWatch(watchID);
}, 10000);
};
function compassError(error) {
alert('CompassError: ' + error.code);
};
}
Da das Kompass-Plugin fast mit dem Beschleunigungs-Plugin identisch ist, wird diesmal ein Fehlercode angezeigt. Einige Geräte verfügen nicht über den Magnetsensor, der für die Funktion des Kompasses erforderlich ist. Wenn Ihr Gerät es nicht hat, wird der folgende Fehler angezeigt.