cordova,phonegap 重力感應

3.0版本後,cordova經過插件模式實現設備API,使用CLI的plugin命令能夠添加或者移除插件:javascript

$ cordova plugin add org.apache.cordova.device-motion
    $ cordova plugin ls
    [ 'org.apache.cordova.device-motion' ]
    $ cordova plugin rm org.apache.cordova.device-motion
這個命令能夠應用於全部平臺,可是修改平臺特定的配置設置須要使用下面的方法
  • Amazon Fire OS(在 res/xml/config.xml中)
    <feature name="Accelerometer">
        <param name="android-package" value="org.apache.cordova.devicemotion.AccelListener" />
    </feature>
  • Android(在 res/xml/config.xml中)
    <feature name="Accelerometer">
        <param name="android-package" value="org.apache.cordova.devicemotion.AccelListener" />
    </feature>
  • BlackBerry 10 (在www/config.xml中)
    <feature name="Accelerometer" value="Accelerometer" />
  • IOS (在應用程序名的 config.xml 文件)
    <feature name="Accelerometer">
        <param name="ios-package" value="CDVAccelerometer" />
    </feature>
  • Windows Phone (在 Properties/WPAppManifest.xml中)
    <Capabilities>
        <Capability Name="ID_CAP_SENSORS" />
    </Capabilities>

函數

accelerometer.getCurrentAccelerometer()

獲取當前沿x、y、z方向的加速度。
navigator.accelerometer.getCurrentAcceleration(accelerometerSuccess, accelerometerError);

描述

加速度傳感器是一種運動傳感器,它檢測設備在三維空間中沿x/y/z方向相對於前一時刻的變化數據。
 
這些值是經過傳遞給 accelerometerSuccess 回到函數的參數返回的。
 

簡單例子

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

function onError() {
    alert('onError!');
};
document.addEventListener("deviceready", onDeviceReady, false);function onDeviceReady() {        navigator.accelerometer.getCurrentAcceleration(onSuccess, onError);    }
遠程使用,要注意須要把plugins 等拷貝過去。
相關文章
相關標籤/搜索