accelerometer

Accelerometer模块管理设备加速度传感器,用于获取设备加速度信息,包括x(屏幕水平方向)、y(垂直屏幕水平方向)、z(垂直屏幕平面方向)三个方向的加速度信息。通过plus.accelerometer获取设备加速度传感器管理对象。

方法:

对象:

回调方法:

权限:

5+功能模块(permissions)

  1. {
  2. // ...
  3. "permissions":{
  4. // ...
  5. "Accelerometer": {
  6. "description": "加速度传感器"
  7. }
  8. }
  9. }

getCurrentAcceleration

获取当前设备的加速度信息

  1. void plus.accelerometer.getCurrentAcceleration( successCB, errorCB );

说明:

加速度是设备在当前方向上所做相对运动变化(增、减量)的运动传感器。加速度信息包括x、y、z三个方向的信息。加速度信息可通过successCB回调函数返回。加速度信息获取失败则调用回调函数errorCB。

参数:

返回值:

void: 无

示例:

  1. // 获取加速度信息
  2. function getCurrentAcceleration(){
  3. plus.accelerometer.getCurrentAcceleration( function( a ) {
  4. plus.nativeUI.alert( "Acceleration\nx:" + a.xAxis + "\ny:" + a.yAxis + "\nz:" + a.zAxis );
  5. } );
  6. }

uni-app使用plus注意事项

watchAcceleration

监听设备加速度变化信息

  1. Number plus.accelerometer.watchAcceleration( successCB, errorCB, option );

说明:

加速度是设备在当前方向上所做相对运动变化(增、减量)的运动传感器。加速度信息包括x、y、z三个方向的信息。watchAcceleration每隔固定时间就获取一次设备的加速度信息,通过successCB回调函数返回。可通过option的frequency参数设定获取设备加速度信息的时间间隔。加速度信息获取失败则调用回调函数errorCB。

参数:

  • successCB: (AccelerometerSuccessCallback)必选 成功回调函数当获取设备的加速度信息成功时回调,并返回加速度信息。
  • errorCB: (AccelerometerErrorCallback)可选 失败回调函数当获取设备加速度信息失败回调函数,并返回错误信息。
  • options: (AccelerometerOption)可选 加速度信息参数监听设备加速度信息的参数,如更新数据的频率等。

返回值:

Number: 用于标识加速度信息监听器,可通过clearWatch方法取消监听。

示例:

  1. var wid = null;
  2. // 监听设备加速度变化
  3. function watchAcceleration(){
  4. wid = plus.accelerometer.watchAcceleration( function ( a ) {
  5. console.log( "x:" + a.xAxis + "\ny:" + a.yAxis + "\nz:" + a.zAxis);
  6. }, function ( e ) {
  7. plus.nativeUI.alert("watchAcceleration error: " + JSON.stringify(e));
  8. } );
  9. }

uni-app使用plus注意事项

clearWatch

关闭监听设备加速度信息

  1. void plus.accelerometer.clearWatch( watchId );

说明:

关闭监听设备加速度信息,应用关闭调用watchAcceleration方法的开启的监听操作。

参数:

  • watchId: (Number)必选 需要取消的加速度监听器标识,调用watchAcceleration方法的返回值。

返回值:

void: 无

示例:

  1. var wid = null;
  2. // wid = plus.accelerometer.watchAcceleration(...);
  3. // 关闭监听设备加速度
  4. function clearWatch(){
  5. plus.accelerometer.clearWatch(wid);
  6. wid = null;
  7. }

uni-app使用plus注意事项

Acceleration

设备加速度信息对象

  1. interface Acceleration {
  2. readonly attribute Number xAxis;
  3. readonly attribute Number yAxis;
  4. readonly attribute Number zAxis;
  5. }

说明:

JSON对象,保存获取设备的加速度信息,包括x、y、z三个方向的加速度信息。

属性:

  • xAxis: _(Number类型)_x轴方向的加速度获取当前设备x轴方向的加速度,浮点型数据,与物理学中的加速度值一致。

  • yAxis: _(Number类型)_y轴方向的加速度获取当前设备y轴方向的加速度,浮点型数据,与物理学中的加速度值一致。

  • zAxis: _(Number类型)_z轴方向的加速度获取当前设备z轴方向的加速度,浮点型数据,与物理学中的加速度值一致。

AccelerometerOption

监听设备加速度感应器参数

  1. interface Acceleration {
  2. readonly attribute DOMString frequency;
  3. }

说明:

JSON对象,用于设置获取设备加速度信息的参数。

属性:

  • frequency: (Number类型)更新加速度信息间隔时间监听器获取加速度信息的时间间隔,单位为ms,默认值为500ms

示例:

  1. var wid = null;
  2. // 监听设备加速度变化
  3. function watchAcceleration(){
  4. wid = plus.accelerometer.watchAcceleration( function ( a ) {
  5. console.log( "x:" + a.xAxis + "\ny:" + a.yAxis + "\nz:" + a.zAxis);
  6. }, function ( e ) {
  7. plus.nativeUI.alert("watchAcceleration error: " + JSON.stringify(e));
  8. }, {frequency:1000}); // 设置更新间隔时间为1s
  9. }

uni-app使用plus注意事项

AccelerometerSuccessCallback

获取设备加速度信息成功的回调函数

  1. void onSuccess( acceleration ) {
  2. // Get acceleration code.
  3. }

参数:

  • acceleration: (Acceleration)必选 设备的加速度信息Acceleration类型对象,用于获取各方向的详细加速度值。

返回值:

void: 无

AccelerometerErrorCallback

获取设备加速度信息失败的回调函数

  1. function void onAccelerometerError(Exception error) {
  2. // Handle error
  3. var code = error.code; // 错误编码
  4. var message = error.message; // 错误描述信息
  5. }

参数:

  • error: (Exception)必选 获取加速度操作的错误信息可通过error.code(Number类型)获取错误编码;可通过error.message(String类型)获取错误描述信息。

返回值:

void: 无