9c02b8bb创建于 2024年11月13日历史提交
文件最后提交记录最后更新时间
1 年前
1 年前
1 年前
1 年前
1 年前
1 年前
1 年前
1 年前
1 年前
1 年前
1 年前
README

订阅/取消订阅传感器

介绍

本示例主要展示了传感器的基础功能,包括传感器订阅和取消传感器订阅。

效果预览

首页 选择传感器类型 数据上报 输入数据采样频率
home play1 play1 play1

使用说明:

1.点击“input data sampleRate”按钮,输入100000000;该属性有最小值和最大值的限制,由硬件支持的上报频率决定,当设置频率大于最大值时以最大值上报数据,小于最小值时以最小值上报数据,置空则以默认频率上报;

2.在主界面点击”Please select sensor type“按钮,进入选择传感器类型页面;

3.在选择传感器页面选择需要订阅的传感器类型后,点击“订阅”按钮,持续订阅传感器数据会出现在下方;

4.如果需要取消订阅,点击“取消订阅”按钮,即可取消订阅传感器数据;

5.点击“订阅一次”按钮,将会上报订阅传感器一次的数据;

6.需要订阅其他传感器之前,需要先取消订阅本次传感器数据。

工程目录

entry/src/main/
|---ets
|---|---common
|---|---|---contants
|---|---|---|---CommonConstants.ets        // 用于存放应用程序共享的库文件和资源
|---|---|---utils
|---|---|---|---CommonUtils.ets            // 共享资源库
|---|---|---|---Logger.ets                 // 日志打印工具
|---|---|---|---Utils.ets                  // 日志工具
|---|---entryability
|---|---|---EntryAbility.ets               // 应用入口
|---|---EntryBackupAbility
|---|---|---EntryBackupAbility.ets         // 备份恢复能力
|---|---pages
|---|---|---Index.ets                      // 订阅传感器,取消订阅传感器
|---resources                              // 静态资源文件(图形、多媒体等)

具体实现

  • 图片功能在Index中实现,具体参考Index.ets:
  • 点击“Please select sensor type”按钮,通过sensor.getSensorListSync()获取设备支持的传感器类型;
  • 点击“订阅”按钮,通过sensor.on()订阅传感器,获取传感器数据;
  • 点击"取消订阅"按钮,通过sensor.off(),取消订阅传感器。
  • 点击"订阅一次"按钮,通过sensor.once(),取消订阅传感器。

相关权限

ohos.permission.ACCELEROMETER

ohos.permission.GYROSCOPE

ohos.permission.ACTIVITY_MOTION

ohos.permission.READ_HEALTH_DATA

依赖

不涉及。

约束与限制

  1. 本示例仅支持标准系统上运行,支持设备:RK3568、Phone、Tablet;
  2. 本示例为Stage模型,支持API14版本SDK,版本号:5.0.2.43;
  3. 本示例需要使用DevEco Studio Release(5.0.3.900)及以上版本才可编译运行;
  4. 传感器数据订阅和取消订阅接口成对调用,当不再需要订阅传感器数据时,开发者需要调用取消订阅接口停止数据上报;
  5. 本示例涉及系统接口,需要配置系统应用签名,可以参考特殊权限配置方法,把配置文件中的“app-feature”字段信息改为“hos_system_app”。

下载

如需单独下载本工程,执行如下命令:

git init
git config core.sparsecheckout true
echo code/DocsSample/Sensor > .git/info/sparse-checkout
git remote add origin https://gitee.com/openharmony/applications_app_samples.git
git pull origin master