• Home
Name Date Size #Lines LOC

..--

AppScope/06-May-2025-3532

entry/06-May-2025-1,1091,023

hvigor/06-May-2025-3836

screenshots/devices/06-May-2025-

.gitignoreD06-May-2025133 1212

README.mdD06-May-20255.2 KiB9161

build-profile.json5D06-May-20251.2 KiB5150

code-linter.json5D06-May-2025945 3534

hvigorfile.tsD06-May-2025830 225

oh-package.json5D06-May-2025801 2725

ohosTest.mdD06-May-20251.1 KiB1210

README.md

1# 订阅/取消订阅传感器
2
3### 介绍
4
5本示例主要展示了传感器的基础功能,包括传感器订阅和取消传感器订阅。
6
7### 效果预览
8
9| 首页                                                         | 选择传感器类型                                               | 数据上报                                                     | 输入数据采样频率                                             |
10| ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ |
11| <img src="screenshots/devices/homePage.jpeg" alt="home" style="zoom:40%;" /> | <img src="screenshots/devices/sampleRate.jpeg" alt="play1" style="zoom:40%;" /> | <img src="screenshots/devices/sensorType.jpeg" alt="play1" style="zoom:40%;" /> | <img src="screenshots/devices/subscribe.jpeg" alt="play1" style="zoom:40%;" /> |
12
13使用说明:
14
151.点击“input data sampleRate”按钮,输入100000000;该属性有最小值和最大值的限制,由硬件支持的上报频率决定,当设置频率大于最大值时以最大值上报数据,小于最小值时以最小值上报数据,置空则以默认频率上报;
16
172.在主界面点击”Please select sensor type“按钮,进入选择传感器类型页面;
18
193.在选择传感器页面选择需要订阅的传感器类型后,点击“订阅”按钮,持续订阅传感器数据会出现在下方;
20
214.如果需要取消订阅,点击“取消订阅”按钮,即可取消订阅传感器数据;
22
235.点击“订阅一次”按钮,将会上报订阅传感器一次的数据;
24
256.需要订阅其他传感器之前,需要先取消订阅本次传感器数据。
26
27### 工程目录
28
29```
30entry/src/main/
31|---ets
32|---|---common
33|---|---|---contants
34|---|---|---|---CommonConstants.ets        // 用于存放应用程序共享的库文件和资源
35|---|---|---utils
36|---|---|---|---CommonUtils.ets            // 共享资源库
37|---|---|---|---Logger.ets                 // 日志打印工具
38|---|---|---|---Utils.ets                  // 日志工具
39|---|---entryability
40|---|---|---EntryAbility.ets               // 应用入口
41|---|---EntryBackupAbility
42|---|---|---EntryBackupAbility.ets         // 备份恢复能力
43|---|---pages
44|---|---|---Index.ets                      // 订阅传感器,取消订阅传感器
45|---resources                              // 静态资源文件(图形、多媒体等)
46
47```
48
49### 具体实现
50
51- 图片功能在Index中实现,具体参考[Index.ets](entry/src/main/ets/pages/Index.ets):
52- 点击“Please select sensor type”按钮,通过[sensor.getSensorListSync()](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis-sensor-service-kit/js-apis-sensor.md#sensorgetsensorlistsync12)获取设备支持的传感器类型;
53- 点击“订阅”按钮,通过[sensor.on()](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis-sensor-service-kit/js-apis-sensor.md#sensoron)订阅传感器,获取传感器数据;
54- 点击"取消订阅"按钮,通过[sensor.off()](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis-sensor-service-kit/js-apis-sensor.md#sensoroff),取消订阅传感器。
55- 点击"订阅一次"按钮,通过[sensor.once()](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis-sensor-service-kit/js-apis-sensor.md#sensoronce),取消订阅传感器。
56
57### 相关权限
58
59[ohos.permission.ACCELEROMETER](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis-sensor-service-kit/js-apis-sensor.md#accelerometer9)
60
61[ohos.permission.GYROSCOPE](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis-sensor-service-kit/js-apis-sensor.md#gyroscope9)
62
63[ohos.permission.ACTIVITY_MOTION](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis-sensor-service-kit/js-apis-sensor.md#pedometer9)
64
65[ohos.permission.READ_HEALTH_DATA](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis-sensor-service-kit/js-apis-sensor.md#heart_rate9)
66
67### 依赖
68
69不涉及。
70
71### 约束与限制
72
731. 本示例仅支持标准系统上运行,支持设备:RK3568、Phone、Tablet;
742. 本示例为Stage模型,支持API14版本SDK,版本号:5.0.2.43;
753. 本示例需要使用DevEco Studio Release(5.0.3.900)及以上版本才可编译运行;
764. 传感器数据订阅和取消订阅接口成对调用,当不再需要订阅传感器数据时,开发者需要调用取消订阅接口停止数据上报;
775. 本示例涉及系统接口,需要配置系统应用签名,可以参考[特殊权限配置方法](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/security/hapsigntool-overview.md),把配置文件中的“app-feature”字段信息改为“hos_system_app”。
78
79### 下载
80
81如需单独下载本工程,执行如下命令:
82
83```
84git init
85git config core.sparsecheckout true
86echo code/DocsSample/Sensor > .git/info/sparse-checkout
87git remote add origin https://gitee.com/openharmony/applications_app_samples.git
88git pull origin master
89```
90
91