跳到主要内容

通信命令与事件

通信命令与事件是一种机制,它让你能够与设备的底层(硬件)进行交互。

通信命令

通信命令 是上层对下层发出的请求。

用户输入最终会转换为一些指令,以使设备执行某些操作。

例如,当用户点击一个按钮时,该按钮会向底层发送请求,指示设备连接到 WiFi。通信命令 就是将请求进行封装并发送到底层的方式。

通信命令 仅提供发送请求的能力,并不涵盖任何业务逻辑。由设备制造商来实现业务逻辑,换句话说,由设备制造商决定提供哪些可用命令。

通信事件

通信事件 是底层向上层发出的通知。

当底层发生某些情况时,底层会向上层发送通知以更新用户界面(UI)。

例如,当设备连接到 WiFi 时,设备会向上层发送通知以更新 UI。通信事件 就是将通知进行封装并发送到上层的方式。

通信事件 仅提供发送通知的能力,并不涵盖任何业务逻辑。由设备制造商来实现业务逻辑,换句话说,由设备制造商决定提供哪些可用事件。

通信事件的状态与操作

从用户界面(UI)的角度来看,通常在接收到一个事件时,需要更新某些内容,比如根据特定条件更新标签文本或图标等。

对于通信事件,我们使用状态和动作机制,以便更轻松地更新用户界面。你可以相应地配置状态以及针对该状态的动作。

例如: 你可能希望为一个 “图像” 部件配置以接收蓝牙状态事件,并分别显示蓝牙断开连接和蓝牙已连接的图标。

  • 右键点击 “图像” 部件,添加一个 “蓝牙状态改变” 的 “通信事件”。

配置通讯事件

  • 配置事件的状态:
    • 状态:0(蓝牙断开连接) 动作:设置蓝牙断开连接时的图像
    • 状态:1(蓝牙已连接) 动作:设置蓝牙已连接时的图像

配置通讯事件状态

信息

你如何知道该使用哪些 “状态码” 呢?这是由你的设备供应商提供的。你应该有设备的相关文档,其中会说明你可以使用哪些状态代码。状态码是由底层业务逻辑决定的。

默认可用的命令与事件

尽管 通信命令通信事件 与设备相关联,但我们仍提供了一些默认可用的命令和事件供你使用。

  • 时间更新
  • 蓝牙连接 / 断开连接
  • WiFi 连接 / 断开连接
  • 电池电量变化

这些是设备命令 / 事件,其实现是模拟的,需要用真实实现替换。

  • 抽屉打开 / 关闭

这是一个 UI 命令 / 事件,而非设备事件。

创建项目时,这些命令 / 事件即可用,你可以直接使用这些命令和事件,也可以对其进行修改以适配你的业务逻辑。

信息

通信命令与事件与设备强关联,如果你想要使用设备的全部能力,让你的设备供应商与我们联系,我们可为该设备提供内置支持