Home / Cordova Dersleri / Cordova Accelometer (İvme Ölçer)

Cordova Accelometer (İvme Ölçer)

Bu eklenti device-motion ismiyle de bilinmektedir.

Cordova Accelometer Plugin Kurulumu

Aşağıdaki komutu girin.

C:\Users\username\Desktop\CordovaProject>cordova plugin add cordova-plugin-device-motion

Buton ekleyelim.

<button id = "getAcceleration">İvme Ölç</button>
<button id = "watchAcceleration">İvme (hız) izle</button>

Şimdi Event Listener’ları ekleyelim. (onDeviceReady fonksiyonumuz içerisine)

document.getElementById("getAcceleration").addEventListener("click", getAcceleration);
document.getElementById("watchAcceleration").addEventListener("click", watchAcceleration);

Sıra fonksiyonumuzu oluşturmaya geldi.

function getAcceleration(){
   navigator.accelerometer.getCurrentAcceleration(accelerometerSuccess, accelerometerError);

   function accelerometerSuccess(acceleration) {
      alert('Acceleration X: ' + acceleration.x + '\n' +
         'Acceleration Y: ' + acceleration.y + '\n' +
         'Acceleration Z: ' + acceleration.z + '\n' +
         'Timestamp: '      + acceleration.timestamp + '\n');
   };

   function accelerometerError() {
      alert('onError!');
   };
	
}

function watchAcceleration(){
    
   var accelerometerOptions = {
      frequency: 3000
   }

   var watchID = navigator.accelerometer.watchAcceleration(accelerometerSuccess, accelerometerError, accelerometerOptions);

   function accelerometerSuccess(acceleration) {
      alert('Acceleration X: ' + acceleration.x + '\n' +
         'Acceleration Y: ' + acceleration.y + '\n' +
         'Acceleration Z: ' + acceleration.z + '\n' +
         'Timestamp: '      + acceleration.timestamp + '\n');

      setTimeout(function() {
         navigator.accelerometer.clearWatch(watchID);
      }, 10000);

   };

   function accelerometerError() {
      alert('onError!');
   };
	
}

Fonksiyonu kaydettikten sonte İvme Ölç butonuna tıklarsanız şu anki hız-ivme değerlerini ölçerseniz. Hız(ivme) izle butonuna tıklarsanız her 3 saniyede bir tetiklenir ve size bilgiler verir.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir