Cordova - Orientação do Dispositivo
A bússola é usada para mostrar a direção relativa ao ponto cardeal norte geográfico.
Etapa 1 - Instalar o plugin de orientação do dispositivo
Abra o command prompt janela e execute o seguinte.
C:\Users\username\Desktop\CordovaProject>cordova plugin
add cordova-plugindevice-orientation
Etapa 2 - Adicionar botões
Este plugin é semelhante ao accelerationplugar. Vamos agora criar dois botões emindex.html.
<button id = "getOrientation">GET ORIENTATION</button>
<button id = "watchOrientation">WATCH ORIENTATION</button>
Etapa 3 - Adicionar ouvintes de eventos
Agora, vamos adicionar event listeners dentro de onDeviceReady função em index.js.
document.getElementById("getOrientation").addEventListener("click", getOrientation);
document.getElementById("watchOrientation").addEventListener("click", watchOrientation);
Etapa 4 - Criação de funções
Vamos criar duas funções; a primeira função irá gerar a aceleração atual e a outra irá verificar as mudanças de orientação. Você pode ver que estamos usando ofrequency opção novamente para ficar de olho nas mudanças que ocorrem a cada três segundos.
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);
};
}
Como o plugin da bússola é quase igual ao plugin de aceleração, mostraremos um código de erro desta vez. Alguns dispositivos não possuem o sensor magnético necessário para o funcionamento da bússola. Se o seu dispositivo não tiver, o seguinte erro será exibido.