Cordova 加速計(jì)

2018-12-28 15:23 更新

該插件也稱為 設(shè)備運(yùn)動(dòng) 。它用于在三維中跟蹤設(shè)備運(yùn)動(dòng)。

步驟1 - 安裝加速計(jì)插件

我們將使用 cordova-CLI 安裝此插件。鍵入以下代碼到命令提示符窗口。

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

步驟2 - 添加按鈕

接下來,我們需要做的是在 index.html 文件中添加兩個(gè)按鈕。一個(gè)用于獲取當(dāng)前加速度,另一個(gè)將監(jiān)視加速度變化。

<button id = "getAcceleration">GET ACCELERATION</button>
<button id = "watchAcceleration">WATCH ACCELERATION</button>

步驟3 - 添加事件監(jiān)聽器

讓我們將按鈕的事件監(jiān)聽器添加到 index.js 中的 onDeviceReady 函數(shù)。

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

步驟4 - 創(chuàng)建函數(shù)

我們將創(chuàng)建兩個(gè)函數(shù)。第一個(gè)將用于獲取當(dāng)前加速度,第二個(gè)將觀察加速度,并且每三秒通知一次。我們還添加了由 setTimeout 函數(shù)包裝的 clearWatch ,以在指定時(shí)間范圍后停止觀看加速。frequency 參數(shù)用于每三秒觸發(fā)一次回調(diào)函數(shù)。

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!');
   };
	
}

現(xiàn)在,如果我們按 GET ACCELERATION 按鈕,我們將獲得當(dāng)前的加速度值。如果我們按WATCH ACCELERATION,警報(bào)將每三秒觸發(fā)一次。在顯示第三個(gè)警告后,將調(diào)用 clearWatch 函數(shù),并且我們不會(huì)再收到任何警報(bào),因?yàn)槲覀儗⒊瑫r(shí)設(shè)置為10000毫秒。

Cordova Acceleration
以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)