首页 > 代码库 > cordova,phonegap 重力感应

cordova,phonegap 重力感应

3.0版本后,cordova通过插件模式实现设备API,使用CLI的plugin命令可以添加或者移除插件:

$ 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="http://www.mamicode.com/org.apache.cordova.devicemotion.AccelListener" /></feature>
  • Android(在 res/xml/config.xml中)
    <feature name="Accelerometer">    <param name="android-package" value="http://www.mamicode.com/org.apache.cordova.devicemotion.AccelListener" /></feature>
  • BlackBerry 10 (在www/config.xml中)
    <feature name="Accelerometer" value="http://www.mamicode.com/Accelerometer" />
  • IOS (在应用程序名的 config.xml 文件)
    <feature name="Accelerometer">    <param name="ios-package" value="http://www.mamicode.com/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 one rror() {    alert(‘onError!‘);};document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
        navigator.accelerometer.getCurrentAcceleration(onSuccess, one rror);
    }
远程使用,要注意需要把plugins 等拷贝过去。

cordova,phonegap 重力感应