加速计更新时间:2025-12-19 10:44:01
qg.accelerometer
基础信息说明
功能概述:提供设备加速度数据监听能力,实时获取三轴加速度(x、y、z),支持设置回调频率与开始/停止监听。
| 项目 | 说明 |
| 版本要求 | 无 |
| 前提条件 | 设备支持加速度传感器 |
| 使用限制 | 无 |
| 相关教程 | 无 |
方法说明
| 方法名 | 签名 | 同步/异步 | 说明 |
| startAccelerometer | qg.startAccelerometer(object): void | 同步 | 开始监听加速度数据,支持设置 interval 频率,结果通过回调异步返回 |
| stopAccelerometer | qg.stopAccelerometer(object): void | 同步 | 停止监听加速度数据,结果通过回调异步返回 |
| onAccelerometerChange | qg.onAccelerometerChange(callback): void | 异步回调 | 注册加速度数据变化回调,频率由 startAccelerometer 的 interval 决定 |
| offAccelerometerChange | qg.offAccelerometerChange(callback): void | 同步 | 取消加速度数据变化回调(见注意事项) |
参数说明
qg.startAccelerometer(object)
| 属性名 | 类型 | 必填 | 默认值 | 说明 |
| interval | String | 否 | normal | 回调执行频率,示例:normal、ui、game(视设备实现而定) |
| success | Function | 否 | - | 接口调用成功的回调函数 |
| fail | Function | 否 | - | 接口调用失败的回调函数 |
| complete | Function | 否 | - | 接口调用结束的回调函数(调用成功、失败都会执行) |
interval参数说明
| 合法值 | 说明 |
| game | 适用于更新游戏的回调频率,在 20ms/次 左右 |
| ui | 适用于更新 UI 的回调频率,在 60ms/次 左右 |
| normal | 普通的回调频率,在 200ms/次 左右 |
qg.stopAccelerometer(object)
| 属性名 | 类型 | 必填 | 说明 |
| success | Function | 否 | 接口调用成功的回调函数 |
| fail | Function | 否 | 接口调用失败的回调函数 |
| complete | Function | 否 | 接口调用结束的回调函数(调用成功、失败都会执行) |
qg.onAccelerometerChange(callback)
| 属性名 | 类型 | 必填 | 说明 |
| callback | Function | 是 | 加速度数据变化回调函数,入参为 { x: Number, y: Number, z: Number } |
qg.offAccelerometerChange(callback)
| 属性名 | 类型 | 必填 | 说明 |
| callback | Function | 否 | 用于取消指定回调;如当前实现未提供独立取消,可用 qg.stopAccelerometer() 或 qg.onAccelerometerChange(null) |
返回值说明
- 所有方法均为无返回(void),通过参数中的回调或事件回调获取结果
回调结果说明
- 调用 qg.onAccelerometerChange 后会根据最近一次 startAccelerometer 的 interval 开始监听,可使用 qg.stopAccelerometer 停止监听。
onAccelerometerChange 回调参数
| 属性名 | 类型 | 说明 |
| x | Number | x 轴加速度,单位 m/s²(设备实现为主) |
| y | Number | y 轴加速度,单位 m/s²(设备实现为主) |
| z | Number | z 轴加速度,单位 m/s²(设备实现为主) |
startAccelerometer/stopAccelerometer 回调参数
| 属性名 | 类型 | 必填 | 说明 |
| success | Function | 否 | 接口调用成功的回调函数 |
| fail | Function | 否 | 接口调用失败的回调函数(当前实现可能不触发) |
| complete | Function | 否 | 接口调用结束的回调函数(调用成功、失败都会执行) |
示例代码
// 以 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')
}
})注意事项
- 回调频率由
startAccelerometer的interval决定,默认normal。 - 仅支持单一回调,重复调用
onAccelerometerChange会覆盖之前的回调。
上一篇:屏幕
下一篇:罗盘
文档内容是否有帮助?
有帮助
无帮助