传感器
说明: 本模块首批接口从API version 8开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
导入模块
import sensor from '@ohos.sensor';
sensor.on
ACCELEROMETER
on(type: SensorType.SENSOR_TYPE_ID_ACCELEROMETER, callback: Callback,options?: Options): void
监听加速度传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
需要权限:ohos.permission.ACCELEROMETER ,该权限为系统权限
系统能力:SystemCapability.Sensors.Sensor
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
type | [SensorType] | 是 | 要订阅的加速度传感器类型为SENSOR_TYPE_ID_ACCELEROMETER。 |
callback | Callback<[AccelerometerResponse]> | 是 | 注册加速度传感器的回调函数,上报的数据类型为AccelerometerResponse。 |
options | [Options] | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
示例:
sensor.on(sensor.SensorType.SENSOR_TYPE_ID_ACCELEROMETER,function(data){
console.info('X-coordinate component: ' + data.x);
console.info('Y-coordinate component: ' + data.y);
console.info('Z-coordinate component: ' + data.z);
},
{interval: 10000000}
);
LINEAR_ACCELERATION
on(type: SensorType.SENSOR_TYPE_ID_LINEAR_ACCELERATION,callback:Callback, options?: Options): void
监听线性加速度传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
需要权限:ohos.permission.ACCELEROMETER ,该权限为系统权限
系统能力:SystemCapability.Sensors.Sensor
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
type | [SensorType] | 是 | 要订阅的线性加速度传感器类型为SENSOR_TYPE_ID_LINEAR_ACCELERATION。 |
callback | Callback<[LinearAccelerometerResponse]> | 是 | 注册线性加速度传感器的回调函数,上报的数据类型为LinearAccelerometerResponse。 |
options | Options | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
示例:
sensor.on(sensor.SensorType.SENSOR_TYPE_ID_LINEAR_ACCELERATION,function(data){
console.info('X-coordinate component: ' + data.x);
console.info('Y-coordinate component: ' + data.y);
console.info('Z-coordinate component: ' + data.z);
},
{interval: 10000000}
);
ACCELEROMETER_UNCALIBRATED
on(type: SensorType.SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED,callback: Callback, options?: Options): void
监听未校准加速度计传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
需要权限:ohos.permission.ACCELEROMETER ,该权限为系统权限
系统能力:SystemCapability.Sensors.Sensor
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
type | [SensorType] | 是 | 要订阅的未校准加速度计传感器类型为SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED。 |
callback | Callback<[AccelerometerUncalibratedResponse]> | 是 | 注册未校准加速度计传感器的回调函数,上报的数据类型为AccelerometerUncalibratedResponse。 |
options | [Options] | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
示例:
sensor.on(sensor.SensorType.SENSOR_TYPE_ID_ACCELEROMETER_UNCALIBRATED,function(data){
console.info('X-coordinate component: ' + data.x);
console.info('Y-coordinate component: ' + data.y);
console.info('Z-coordinate component: ' + data.z);
console.info('X-coordinate bias: ' + data.biasX);
console.info('Y-coordinate bias: ' + data.biasY);
console.info('Z-coordinate bias: ' + data.biasZ);
},
{interval: 10000000}
);
GRAVITY
on(type: SensorType.SENSOR_TYPE_ID_GRAVITY, callback: Callback,options?: Options): void
监听重力传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
系统能力:SystemCapability.Sensors.Sensor
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
type | [SensorType] | 是 | 要订阅的重力传感器类型为SENSOR_TYPE_ID_GRAVITY。 |
callback | Callback<[GravityResponse]> | 是 | 注册重力传感器的回调函数,上报的数据类型为GravityResponse。 |
options | [Options] | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
示例:
sensor.on(sensor.SensorType.SENSOR_TYPE_ID_GRAVITY,function(data){
console.info('X-coordinate component: ' + data.x);
console.info('Y-coordinate component: ' + data.y);
console.info('Z-coordinate component: ' + data.z);
},
{interval: 10000000}
);
GYROSCOPE
on(type: SensorType.SENSOR_TYPE_ID_GYROSCOPE, callback: Callback, options?: Options): void
监听陀螺仪传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
需要权限:ohos.permission.GYROSCOPE ,该权限为系统权限
系统能力:SystemCapability.Sensors.Sensor
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
type | [SensorType] | 是 | 要订阅的陀螺仪传感器类型为SENSOR_TYPE_ID_GYROSCOPE。 |
callback | Callback<[GyroscopeResponse]> | 是 | 注册陀螺仪传感器的回调函数,上报的数据类型为GyroscopeResponse。 |
options | [Options] | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
示例:
sensor.on(sensor.SensorType.SENSOR_TYPE_ID_GYROSCOPE,function(data){
console.info('X-coordinate component: ' + data.x);
console.info('Y-coordinate component: ' + data.y);
console.info('Z-coordinate component: ' + data.z);
},
{interval: 10000000}
);
GYROSCOPE_UNCALIBRATED
on(type: SensorType.SENSOR_TYPE_ID_GYROSCOPE_UNCALIBRATED,callback:Callback, options?: Options): void
监听未校准陀螺仪传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
需要权限:ohos.permission.GYROSCOPE ,该权限为系统权限
系统能力:SystemCapability.Sensors.Sensor
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
type | [SensorType] | 是 | 要订阅的未校准陀螺仪传感器类型为SENSOR_TYPE_ID_GYROSCOPE_UNCALIBRATED。 |
callback | Callback<[GyroscopeUncalibratedResponse]> | 是 | 注册未校准陀螺仪传感器的回调函数,上报的数据类型为GyroscopeUncalibratedResponse。 |
options | [Options] | 否 | 可选参数列表,设置上报频率。 |
示例:
sensor.on(sensor.SensorType.SENSOR_TYPE_ID_GYROSCOPE_UNCALIBRATED,function(data){
console.info('X-coordinate component: ' + data.x);
console.info('Y-coordinate component: ' + data.y);
console.info('Z-coordinate component: ' + data.z);
console.info('X-coordinate bias: ' + data.biasX);
console.info('Y-coordinate bias: ' + data.biasY);
console.info('Z-coordinate bias: ' + data.biasZ);
},
{interval: 10000000}
);
SIGNIFICANT_MOTION
on(type: SensorType.SENSOR_TYPE_ID_SIGNIFICANT_MOTION, callback: Callback, options?: Options): void
监听大幅动作传感器数据变化。如果多次调用该接口,仅最后一次调用生效。
系统能力:SystemCapability.Sensors.Sensor
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
type | [SensorType] | 是 | 要订阅的大幅动作传感器类型为SENSOR_TYPE_ID_SIGNIFICANT_MOTION。 |
callback | Callback<[SignificantMotionResponse]> | 是 | 注册有效运动传感器的回调函数,上报的数据类型为SignificantMotionResponse。 |
options | [Options] | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
示例:
sensor.on(sensor.SensorType.SENSOR_TYPE_ID_SIGNIFICANT_MOTION,function(data){
console.info('Scalar data: ' + data.scalar);
},
{interval: 10000000}
);
PEDOMETER_DETECTION
on(type: SensorType.SENSOR_TYPE_ID_PEDOMETER_DETECTION, callback: Callback, options?: Options): void
监听计步检测传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
需要权限:ohos.permission.ACTIVITY_MOTION
系统能力:SystemCapability.Sensors.Sensor
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
type | [SensorType] | 是 | 要订阅的计步检测传感器类型为SENSOR_TYPE_ID_PEDOMETER_DETECTION。 |
callback | Callback<[PedometerDetectionResponse]> | 是 | 注册计步检测传感器的回调函数,上报的数据类型为PedometerDetectionResponse。 |
options | [Options] | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
示例:
sensor.on(sensor.SensorType.SENSOR_TYPE_ID_PEDOMETER_DETECTION,function(data){
console.info('Scalar data: ' + data.scalar);
},
{interval: 10000000}
);
PEDOMETER
on(type: SensorType.SENSOR_TYPE_ID_PEDOMETER, callback: Callback, options?: Options): void
监听计步传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
需要权限:ohos.permission.ACTIVITY_MOTION
系统能力:SystemCapability.Sensors.Sensor
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
type | [SensorType] | 是 | 要订阅的计步传感器类型为SENSOR_TYPE_ID_PEDOMETER。 |
callback | Callback<[PedometerResponse]> | 是 | 注册计步传感器的回调函数,上报的数据类型为PedometerResponse。 |
options | [Options] | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
示例:
sensor.on(sensor.SensorType.SENSOR_TYPE_ID_PEDOMETER,function(data){
console.info('Steps: ' + data.steps);
},
{interval: 10000000}
);
AMBIENT_TEMPERATURE
on(type:SensorType.SENSOR_TYPE_ID_AMBIENT_TEMPERATURE,callback:Callback, options?: Options): void
监听环境温度传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
系统能力:SystemCapability.Sensors.Sensor
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
type | [SensorType] | 是 | 要订阅的环境温度传感器类型为SENSOR_TYPE_ID_AMBIENT_TEMPERATURE。 |
callback | Callback<[AmbientTemperatureResponse]> | 是 | 注册环境温度传感器的回调函数,上报的数据类型为AmbientTemperatureResponse。 |
options | [Options] | 否 | 可选参数列表,设置上报频率,默认值为200000000ns。 |
示例:
sensor.on(sensor.SensorType.SENSOR_TYPE_ID_AMBIENT_TEMPERATURE,function(data){
console.info('Temperature: ' + data.temperature);
},
{interval: 10000000}
);
MAGNETIC_FIELD
on(type: SensorType.SENSOR_TYPE_ID_MAGNETIC_FIELD, callback: Callback,options?: Options): void
监听磁场传感器的数据变化。如果多次调用该接口,仅最后一次调用生效。
系统能力:SystemCapability.Sensors.Sensor<