Skip to main content
版本:v3

Gyroscope

API_LEVEL 3.0 开始支持,API 兼容性请参考 API_LEVEL

Gyroscope_image}

陀螺仪。测量设备沿三个正交轴(x,y,z)旋转的角速度,x、y 轴与屏幕平行,正方向参考图示,z 轴垂直于设备的屏幕,正方向指向上方,旋转角速度的方向使用右手定则来确定,图示旋转箭头方向为正方向。

信息

权限代码: device:os.gyroscope

方法

start

开始监听陀螺仪数据

start(): void

stop

停止监听陀螺仪数据

stop(): void

getCurrent

获取当前陀螺仪数据

getCurrent(): Result

Result

属性类型说明API_LEVEL
xnumberx 轴的角速度,单位 DPS,度数/秒3.0
ynumbery 轴的角速度,单位 DPS,度数/秒3.0
znumberz 轴的角速度,单位 DPS,度数/秒3.0

onChange

注册陀螺仪数据变化事件监听回调函数

onChange(callback: () => void): void

offChange

取消陀螺仪数据变化事件监听回调函数

offChange(callback: () => void): void

setFreqMode

API_LEVEL 3.0

设置触发频率的模式,mode 值参考频率模式常量

setFreqMode(mode: number): void

常量

频率模式
常量说明API_LEVEL
FREQ_MODE_LOW低功耗模式,触发频率低3.0
FREQ_MODE_NORMAL正常功耗模式,触发频率中等3.0
FREQ_MODE_HIGH高功耗模式,触发频率高3.0

getFreqMode

API_LEVEL 3.0

获取触发频率模式,结果值参考频率模式常量

getFreqMode(): number

常量

频率模式
常量说明API_LEVEL
FREQ_MODE_LOW低功耗模式,触发频率低3.0
FREQ_MODE_NORMAL正常功耗模式,触发频率中等3.0
FREQ_MODE_HIGH高功耗模式,触发频率高3.0

代码示例

import { Gyroscope, FREQ_MODE_LOW } from '@zos/sensor'

const gyroscope = new Gyroscope()

const callback = () => {
console.log(gyroscope.getCurrent())
}
gyroscope.onChange(callback)
gyroscope.setFreqMode(FREQ_MODE_LOW)
gyroscope.start()

// When not needed for use
gyroscope.offChange()
gyroscope.stop()