search
开发文档
开发文档/小游戏开发/API/设备/加速计
加速计更新时间:2025-12-19 10:44:01

qg.accelerometer

基础信息说明

功能概述:提供设备加速度数据监听能力,实时获取三轴加速度(x、y、z),支持设置回调频率与开始/停止监听。

项目说明
版本要求
前提条件设备支持加速度传感器
使用限制
相关教程

方法说明

方法名签名同步/异步说明
startAccelerometerqg.startAccelerometer(object): void同步开始监听加速度数据,支持设置 interval 频率,结果通过回调异步返回
stopAccelerometerqg.stopAccelerometer(object): void同步停止监听加速度数据,结果通过回调异步返回
onAccelerometerChangeqg.onAccelerometerChange(callback): void异步回调注册加速度数据变化回调,频率由 startAccelerometer 的 interval 决定
offAccelerometerChangeqg.offAccelerometerChange(callback): void同步取消加速度数据变化回调(见注意事项)

参数说明

qg.startAccelerometer(object)

属性名类型必填默认值说明
intervalStringnormal回调执行频率,示例:normal、ui、game(视设备实现而定)
successFunction-接口调用成功的回调函数
failFunction-接口调用失败的回调函数
completeFunction-接口调用结束的回调函数(调用成功、失败都会执行)

interval参数说明

合法值说明
game适用于更新游戏的回调频率,在 20ms/次 左右
ui适用于更新 UI 的回调频率,在 60ms/次 左右
normal普通的回调频率,在 200ms/次 左右

qg.stopAccelerometer(object)

属性名类型必填说明
successFunction接口调用成功的回调函数
failFunction接口调用失败的回调函数
completeFunction接口调用结束的回调函数(调用成功、失败都会执行)

qg.onAccelerometerChange(callback)

属性名类型必填说明
callbackFunction加速度数据变化回调函数,入参为 { x: Number, y: Number, z: Number }

qg.offAccelerometerChange(callback)

属性名类型必填说明
callbackFunction用于取消指定回调;如当前实现未提供独立取消,可用 qg.stopAccelerometer() 或 qg.onAccelerometerChange(null)

返回值说明

  • 所有方法均为无返回(void),通过参数中的回调或事件回调获取结果

回调结果说明

  • 调用 qg.onAccelerometerChange 后会根据最近一次 startAccelerometer 的 interval 开始监听,可使用 qg.stopAccelerometer 停止监听。


onAccelerometerChange 回调参数

属性名类型说明
xNumberx 轴加速度,单位 m/s²(设备实现为主)
yNumbery 轴加速度,单位 m/s²(设备实现为主)
zNumberz 轴加速度,单位 m/s²(设备实现为主)

startAccelerometer/stopAccelerometer 回调参数

属性名类型必填说明
successFunction接口调用成功的回调函数
failFunction接口调用失败的回调函数(当前实现可能不触发)
completeFunction接口调用结束的回调函数(调用成功、失败都会执行)

示例代码

// 以 normal 频率开始监听加速度
qg.startAccelerometer({
interval: 'normal',
success() {
console.log('startAccelerometer success')
},
fail(err) {
console.log('startAccelerometer fail', err)
},
complete() {
console.log('startAccelerometer complete')
}
})

// 注册加速度数据变化回调
qg.onAccelerometerChange(function (res) {
// res: { x: Number, y: Number, z: Number }
console.log('x:', res.x, 'y:', res.y, 'z:', res.z)
})

// 停止监听加速度
qg.stopAccelerometer({
success() {
console.log('stopAccelerometer success')
}
})

注意事项

  • 回调频率由 startAccelerometerinterval 决定,默认 normal
  • 仅支持单一回调,重复调用 onAccelerometerChange 会覆盖之前的回调。
上一篇:屏幕
下一篇:罗盘
文档内容是否有帮助?
有帮助
无帮助