Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Docs
提交
de63cdf3
D
Docs
项目概览
OpenHarmony
/
Docs
接近 2 年 前同步成功
通知
159
Star
292
Fork
28
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
Docs
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
de63cdf3
编写于
3月 28, 2022
作者:
C
cff-gite
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
修改docs文档
Signed-off-by:
N
cff-gite
<
chenfeifei8@huawei.com
>
上级
60cb1c03
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
38 addition
and
96 deletion
+38
-96
zh-cn/application-dev/device/sensor-guidelines.md
zh-cn/application-dev/device/sensor-guidelines.md
+9
-21
zh-cn/application-dev/device/sensor-overview.md
zh-cn/application-dev/device/sensor-overview.md
+26
-72
zh-cn/application-dev/device/vibrator-overview.md
zh-cn/application-dev/device/vibrator-overview.md
+3
-3
未找到文件。
zh-cn/application-dev/device/sensor-guidelines.md
浏览文件 @
de63cdf3
...
...
@@ -82,52 +82,40 @@
```
import sensor from "@ohos.sensor"
sensor.on(sensor.sensorType,function(error,data){
if (error) {//调用失败,打印error.code和error.message
console.error("Subscription failed. Error code: " + error.code + "; message: " + error.message);
return;
};
sensor.on(sensor.sensorType,function(data){
console.info("Subscription succeeded. data = "+ data);//调用成功,打印对应传感器的数据
}
);
```
以SensorType为SENSOR_TYPE_ID_ACCELEROMETER为例展示运行结果,持续监听传感器接口的结果如下图所示:
!
[
zh-cn_image_0000001241693881
](
figures/zh-cn_image_0000001241693881.png
)
3.
注销传感器数据监听。
```
import sensor from "@ohos.sensor"
sensor.off(sensor.sensorType,function(error) {
if (error) {//注销失败,返回error.code和error.message
console.error("Failed to unsubscribe from acceleration sensor data. Error code: " + error.code + "; message: " + error.message);
return;
};
sensor.off(sensor.sensorType,function() {
console.info("Succeeded in unsubscribing from acceleration sensor data.");//注销成功,返回打印结果
}
);
```
以SensorType为SENSOR_TYPE_ID_ACCELEROMETER为例展示运行结果,注销传感器成功结果如下图所示:
!
[
zh-cn_image_0000001196654004
](
figures/zh-cn_image_0000001196654004.png
)
4.
获取一次传感器数据变化。
```
import sensor from "@ohos.sensor"
sensor.once(sensor.sensorType,function(error, data) {
if (error) {//获取数据失败,返回error.code和error.message
console.error("Failed to obtain data. Error code: " + error.code + "; message: " + error.message);
return;
};
sensor.once(sensor.sensorType,function(data) {
console.info("Data obtained successfully. data="+data);//获取数据成功,打印对应传感器的数据
}
);
```
以SensorType为SENSOR_TYPE_ID_ACCELEROMETER为例展示运行结果,获取数据成功日志如下图所示:
!
[
zh-cn_image_0000001241733907
](
figures/zh-cn_image_0000001241733907.png
)
zh-cn/application-dev/device/sensor-overview.md
浏览文件 @
de63cdf3
...
...
@@ -6,84 +6,38 @@ OpenHarmony系统传感器是应用访问底层硬件传感器的一种设备抽
根据传感器的用途,可以将传感器分为六大类:运动类传感器、环境类传感器、方向类传感器、光线类传感器、健康类传感器、其他传感器(如霍尔传感器),每一大类传感器都包含不同类型的传感器,某些类型的传感器可能是单一的物理传感器,也可能是由多个物理传感器复合而成。下面为传感器列表:
**表1**
运动类-ohos.sensor.agent.CategoryMotionAgent
| 传感器类型 | 中文描述 | 说明 | 主要用途 |
| -------------------------------------- | --------- | ---------------------------------------- | --------------- |
| SENSOR_TYPE_ACCELEROMETER | 加速度传感器 | 测量三个物理轴(x、y
和
z)上,施加在设备上的加速度(包括重力加速度),单位
:
m/s2 | 检测运动状态 |
| SENSOR_TYPE_ACCELEROMETER_UNCALIBRATED | 未校准加速度传感器 | 测量三个物理轴(x、y
和
z)上,施加在设备上的未校准的加速度(包括重力加速度),单位
:
m/s2 | 检测加速度偏差估值 |
| SENSOR_TYPE_LINEAR_ACCELERATION | 线性加速度传感器 | 测量三个物理轴(x、y
和
z)上,施加在设备上的线性加速度(不包括重力加速度),单位
:
m/s2 | 检测每个单轴方向上的线性加速度 |
| SENSOR_TYPE_GRAVITY | 重力传感器 | 测量三个物理轴(x、y
和
z)上,施加在设备上的重力加速度,单位
:
m/s2 | 测量重力大小 |
| SENSOR_TYPE_GYROSCOPE | 陀螺仪传感器 | 测量三个物理轴(x、y
和
z)上,设备的旋转角速度,单位
:
rad/s | 测量旋转的角速度 |
| SENSOR_TYPE_GYROSCOPE_UNCALIBRATED | 未校准陀螺仪传感器 | 测量三个物理轴(x、y
和
z)上,设备的未校准旋转角速度,单位
:
rad/s | 测量旋转的角速度及偏差估值 |
| SENSOR_TYPE_SIGNIFICANT_MOTION | 大幅度动作传感器 | 测量三个物理轴(x、y
和
z)上,设备是否存在大幅度运动;如果取值为1则代表存在大幅度运动,取值为0则代表没有大幅度运动 | 用于检测设备是否存在大幅度运动 |
| SENSOR_TYPE_DROP_DETECTION | 跌落检测传感器 | 检测设备的跌落状态;如果取值为1则代表发生跌落,取值为0则代表没有发生跌落 | 用于检测设备是否发生了跌落 |
| SENSOR_TYPE_PEDOMETER_DETECTION | 计步器检测传感器 | 检测用户的计步动作;如果取值为1则代表用户产生了计步行走的动作;取值为0则代表用户没有发生运动 | 用于检测用户是否有计步的动作 |
| SENSOR_TYPE_PEDOMETER | 计步器传感器 | 统计用户的行走步数 | 用于提供用户行走的步数数据 |
**表2**
环境类-ohos.sensor.agent.CategoryOrientationAgent
| 传感器类型 | 中文描述 | 说明 | 主要用途 |
| --------------------------------------- | -------- | ---------------------------------------- | --------------- |
| SENSOR_TYPE_AMBIENT_TEMPERATURE | 环境温度传感器 | 测量环境温度,单位
:
摄氏度
(°C) | 测量环境温度 |
| SENSOR_TYPE_MAGNETIC_FIELD | 磁场传感器 | 测量三个物理轴向(x、y、z)上,环境地磁场,单位
:
μT | 创建指南针 |
| SENSOR_TYPE_MAGNETIC_FIELD_UNCALIBRATED | 未校准磁场传感器 | 测量三个物理轴向(x、y、z)上,未校准环境地磁场,单位
:
μT | 测量地磁偏差估值 |
| SENSOR_TYPE_HUMIDITY | 湿度传感器 | 测量环境的相对湿度,以百分比
(%)
表示 | 监测露点、绝对湿度和相对湿度 |
| SENSOR_TYPE_BAROMETER | 气压计传感器 | 测量环境气压,单位
:
hPa
或
mbar | 测量环境气压 |
| SENSOR_TYPE_SAR | 比吸收率传感器 | 测量比吸收率,单位:W/kg | 测量设备的电磁波能量吸收比值。 |
**表3**
方向类-ohos.sensor.agent.CategoryOrientationAgent
| 传感器类型 | 中文描述 | 说明 | 主要用途 |
| ---------------------------------------- | ----------------------- | ---------------------------------------- | --------------------------------- |
| SENSOR_TYPE_6DOF | 自由度传感器 | 测量上下、前后、左右方向上的位移,单位:m或mm;测量俯仰、偏摆、翻滚的角度,单位:rad | 检测设备的三个平移自由度以及旋转自由度,用于目标定位追踪,如:VR |
| SENSOR_TYPE_SCREEN_ROTATION | 屏幕旋转传感器 | 检测设备屏幕的旋转状态 | 用于检测设备屏幕是否发生了旋转 |
| SENSOR_TYPE_DEVICE_ORIENTATION | 设备方向传感器 | 测量设备的旋转方向,单位:rad | 用于检测设备旋转方向的角度值 |
| SENSOR_TYPE_ORIENTATION | 方向传感器 | 测量设备围绕所有三个物理轴(x、y、z)旋转的角度值,单位:rad | 用于提供屏幕旋转的3个角度值 |
| SENSOR_TYPE_ROTATION_VECTOR | 旋转矢量传感器 | 测量设备旋转矢量,复合传感器:由加速度传感器、磁场传感器、陀螺仪传感器合成 | 检测设备相对于东北天坐标系的方向 |
| SENSOR_TYPE_GAME_ROTATION_VECTOR
<br/>
SENSOR_TYPE_GEOMAGNETIC_ROTATION_VECTOR | 游戏旋转矢量传感器
<br/>
地磁旋转矢量传感器 | 测量设备游戏旋转矢量,复合传感器:由加速度传感器、陀螺仪传感器合成
<br/>
测量设备地磁旋转矢量,复合传感器:由加速度传感器、磁场传感器合成 | 应用于游戏场景
<br/>
用于测量地磁旋转矢量 |
**表4**
光线类-ohos.sensor.agent.CategoryLightAgent
| 传感器类型 | 中文描述 | 说明 | 主要用途 |
| ----------------------------- | -------- | ---------------------- | -------------------- |
| SENSOR_TYPE_PROXIMITY | 接近光传感器 | 测量可见物体相对于设备显示屏的接近或远离状态 | 通话中设备相对人的位置 |
| SENSOR_TYPE_TOF | ToF传感器 | 测量光在介质中行进一段距离所需的时间 | 人脸识别 |
| SENSOR_TYPE_AMBIENT_LIGHT | 环境光传感器 | 测量设备周围光线强度,单位:lux | 自动调节屏幕亮度,检测屏幕上方是否有遮挡 |
| SENSOR_TYPE_COLOR_TEMPERATURE | 色温传感器 | 测量环境中的色温 | 应用于设备的影像处理 |
| SENSOR_TYPE_COLOR_RGB | RGB颜色传感器 | 测量环境中的RGB颜色值 | 通过三原色的反射比率实现颜色检测 |
| SENSOR_TYPE_COLOR_XYZ | XYZ颜色传感器 | 测量环境中的XYZ颜色值 | 用于辨识真色色点,还原色彩更真实 |
**表5**
健康类-ohos.sensor.agent.CategoryBodyAgent
| 传感器类型 | 中文描述 | 说明 | 主要用途 |
| -------------------------- | ------- | --------- | -------------- |
| SENSOR_TYPE_HEART_RATE | 心率传感器 | 测量用户的心率数值 | 用于提供用户的心率健康数据 |
| SENSOR_TYPE_WEAR_DETECTION | 佩戴检测传感器 | 检测用户是否佩戴 | 用于检测用户是否佩戴智能穿戴 |
**表6**
其他
| 传感器类型 | 中文描述 | 说明 | 主要用途 |
| ----------------------------- | ------- | -------------- | ---------------- |
| SENSOR_TYPE_HALL | 霍尔传感器 | 测量设备周围是否存在磁力吸引 | 设备的皮套模式 |
| SENSOR_TYPE_GRIP_DETECTOR | 手握检测传感器 | 检测设备是否有抓力施加 | 用于检查设备侧边是否被手握住 |
| SENSOR_TYPE_MAGNET_BRACKET | 磁铁支架传感器 | 检测设备是否被磁吸 | 检测设备是否位于车内或者室内 |
| SENSOR_TYPE_PRESSURE_DETECTOR | 按压检测传感器 | 检测设备是否有压力施加 | 用于检测设备的正上方是否存在按压 |
| 传感器类型 | 中文描述 | 说明 | 主要用途 |
| --------------------------------------- | ------------------ | ------------------------------------------------------------ | ---------------------------------------- |
| SENSOR_TYPE_ACCELEROMETER | 加速度传感器 | 测量三个物理轴(x、y
和
z)上,施加在设备上的加速度(包括重力加速度),单位
:
m/s2 | 检测运动状态 |
| SENSOR_TYPE_ACCELEROMETER_UNCALIBRATED | 未校准加速度传感器 | 测量三个物理轴(x、y
和
z)上,施加在设备上的未校准的加速度(包括重力加速度),单位
:
m/s2 | 检测加速度偏差估值 |
| SENSOR_TYPE_LINEAR_ACCELERATION | 线性加速度传感器 | 测量三个物理轴(x、y
和
z)上,施加在设备上的线性加速度(不包括重力加速度),单位
:
m/s2 | 检测每个单轴方向上的线性加速度 |
| SENSOR_TYPE_GRAVITY | 重力传感器 | 测量三个物理轴(x、y
和
z)上,施加在设备上的重力加速度,单位
:
m/s2 | 测量重力大小 |
| SENSOR_TYPE_GYROSCOPE | 陀螺仪传感器 | 测量三个物理轴(x、y
和
z)上,设备的旋转角速度,单位
:
rad/s | 测量旋转的角速度 |
| SENSOR_TYPE_GYROSCOPE_UNCALIBRATED | 未校准陀螺仪传感器 | 测量三个物理轴(x、y
和
z)上,设备的未校准旋转角速度,单位
:
rad/s | 测量旋转的角速度及偏差估值 |
| SENSOR_TYPE_SIGNIFICANT_MOTION | 大幅度动作传感器 | 测量三个物理轴(x、y
和
z)上,设备是否存在大幅度运动;如果取值为1则代表存在大幅度运动,取值为0则代表没有大幅度运动 | 用于检测设备是否存在大幅度运动 |
| SENSOR_TYPE_PEDOMETER_DETECTION | 计步器检测传感器 | 检测用户的计步动作;如果取值为1则代表用户产生了计步行走的动作;取值为0则代表用户没有发生运动 | 用于检测用户是否有计步的动作 |
| SENSOR_TYPE_PEDOMETER | 计步器传感器 | 统计用户的行走步数 | 用于提供用户行走的步数数据 |
| SENSOR_TYPE_AMBIENT_TEMPERATURE | 环境温度传感器 | 测量环境温度,单位
:
摄氏度
(°C) | 测量环境温度 |
| SENSOR_TYPE_MAGNETIC_FIELD | 磁场传感器 | 测量三个物理轴向(x、y、z)上,环境地磁场,单位
:
μT | 创建指南针 |
| SENSOR_TYPE_MAGNETIC_FIELD_UNCALIBRATED | 未校准磁场传感器 | 测量三个物理轴向(x、y、z)上,未校准环境地磁场,单位
:
μT | 测量地磁偏差估值 |
| SENSOR_TYPE_HUMIDITY | 湿度传感器 | 测量环境的相对湿度,以百分比
(%)
表示 | 监测露点、绝对湿度和相对湿度 |
| SENSOR_TYPE_BAROMETER | 气压计传感器 | 测量环境气压,单位
:
hPa
或
mbar | 测量环境气压 |
| SENSOR_TYPE_ORIENTATION | 方向传感器 | 测量设备围绕所有三个物理轴(x、y、z)旋转的角度值,单位:rad | 用于提供屏幕旋转的3个角度值 |
| SENSOR_TYPE_ROTATION_VECTOR | 旋转矢量传感器 | 测量设备旋转矢量,复合传感器:由加速度传感器、磁场传感器、陀螺仪传感器合成 | 检测设备相对于东北天坐标系的方向 |
| SENSOR_TYPE_PROXIMITY | 接近光传感器 | 测量可见物体相对于设备显示屏的接近或远离状态 | 通话中设备相对人的位置 |
| SENSOR_TYPE_AMBIENT_LIGHT | 环境光传感器 | 测量设备周围光线强度,单位:lux | 自动调节屏幕亮度,检测屏幕上方是否有遮挡 |
| SENSOR_TYPE_HEART_RATE | 心率传感器 | 测量用户的心率数值 | 用于提供用户的心率健康数据 |
| SENSOR_TYPE_WEAR_DETECTION | 佩戴检测传感器 | 检测用户是否佩戴 | 用于检测用户是否佩戴智能穿戴 |
| SENSOR_TYPE_HALL | 霍尔传感器 | 测量设备周围是否存在磁力吸引 | 设备的皮套模式 |
## 运作机制
OpenHarmony传感器包含如下四个模块:Sensor API、Sensor Framework、Sensor Service和HD
_IDL
层。
OpenHarmony传感器包含如下四个模块:Sensor API、Sensor Framework、Sensor Service和HD
F
层。
**图1**
OpenHarmony传感器
!
[
zh-cn_image_0000001
226521897
](
figures/zh-cn_image_0000001226521897
.png
)
!
[
zh-cn_image_0000001
199027515
](
C:\Users\Administrator\Pictures\Saved
Pictures
\z
h-cn_image_0000001199027515
.png)
-
Sensor API:提供传感器的基础API,主要包含查询传感器列表,订阅/取消传感器的数据、执行控制命令等,简化应用开发。
...
...
@@ -91,7 +45,7 @@ OpenHarmony传感器包含如下四个模块:Sensor API、Sensor Framework、S
-
Sensor Service:主要实现HD_IDL层数据接收、解析、分发,前后台的策略管控,对该设备Sensor的管理,Sensor权限管控等。
-
HD
_IDL
层:对不同的FIFO、频率进行策略选择,以及适配不同设备。
-
HD
F
层:对不同的FIFO、频率进行策略选择,以及适配不同设备。
## 约束与限制
...
...
zh-cn/application-dev/device/vibrator-overview.md
浏览文件 @
de63cdf3
...
...
@@ -6,11 +6,11 @@
## 运作机制
Vibrator属于控制类小器件,主要包含以下四个模块:Vibrator API,Vibrator Framework,Vibrator Service和HD
_IDL
层。
Vibrator属于控制类小器件,主要包含以下四个模块:Vibrator API,Vibrator Framework,Vibrator Service和HD
F
层。
**图1**
控制类小器件中的Vibrator
!
[
zh-cn_image_0000001180249428
](
figures/zh-cn_image_0000001180249428
.png
)

-
Vibrator API:提供振动器基础的API,主要包含振动器的列表查询,振动器的振动器效果查询,触发/关闭振动器等接口。
...
...
@@ -18,7 +18,7 @@ Vibrator属于控制类小器件,主要包含以下四个模块:Vibrator API
-
Vibrator Service:实现控制器的服务管理。
-
HD
_IDL
层:适配不同设备。
-
HD
F
层:适配不同设备。
## 约束与限制
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录