OpenHarmony多模输入子系统

OpenHarmony多模输入子系统

简介

OpenHarmony旨在为开发者提供NUI(Natural User Interface)的交互方式,有别于传统操作系统的输入,在OpenHarmony上,我们将多种维度的输入整合在一起,开发者可以借助应用程序框架、系统自带的UI组件或API接口轻松地实现具有多维、自然交互特点的应用程序。

具体来说,多模输入子系统基于Linux原生驱动和HDF驱动接收设备输入事件,如键盘、鼠标、触摸屏、触摸板等, 对输入事件进行归一化和标准化后通过innerSDK分发到ArkUI框架,ArkUI框架封装事件后转发到应用,或者innerSDK通过JsKit接口直接分发事件到应用。

目录

复制代码
/foundation/multimodalinput/input
├── common                       # 公共代码
├── interfaces                   # 对外接口存放目录
│   └── native                   # 对外native层接口存放目录
│       └── innerkits            # 对系统内部子系统提供native层接口存放目录
├── service                      # 服务框架代码
├── sa_profile                   # 服务启动配置文件
├── uinput                       # 输入事件注入模块

使用

接口说明

多模输入目前提供的接口为按键事件注入接口,该接口仅对系统应用开放。

inputEventClient是处理注入事件类。

表 1 inputEventClient的主要接口

功能分类 接口名 描述
注入按键 function injectEvent(keyEvent: KeyEvent): number; 注入按键事件的接口

使用说明

当前仅提供了BACK按键的事件注入。

当系统应用需要返回上一层时,通过注入接口将BACK键注入到多模服务,多模服务再上传到应用,以实现返回到上一层级目录的效果。使用方式如下所示:

复制代码
// 引入提供的js接口库
import inputEventClient from '@ohos.multimodalInput.inputEventClient';

// 调用注入事件接口
let keyEvent = {
    isPressed: true,        // 按键事件的按键类型:true:down false:up
    keyCode: 2,             // 按键对应的keycode, 例如back键的值为2
    keyDownDuration: 0,     // 按键按下到抬起的时长,单位ms
    isIntercepted: false    // 标注按键事件是否检测拦截
}
res = inputEventClient.injectEvent({KeyEvent: keyEvent});

说明: 新增的接口能力需要兼容原有的能力。

设备能力支持

设备 触摸屏 触摸板 鼠标 键盘
rk3568
hi3516dv300

相关仓

多模输入子系统

multimodalinput_input

相关推荐
m0_7496902313 小时前
【寻迹校园 HarmonyOS NEXT 实战 41】用户照片、演示图与图标兜底:ReportMedia 的三层媒体策略
华为·harmonyos·arkts·媒体·隐私保护
夜雨声烦丿14 小时前
用 ArkTS 做好智能便签应用(端云协同):从核心 API 到可验证交互
华为·harmonyos
less_1213816 小时前
HarmonyOS WPS Open SDK:二开能力周回顾与联调地图
华为·harmonyos·wps
小白酷爱学习16 小时前
鸿蒙OS的开发语言与工具链:如何驾驭全新开发生态!
分布式·华为·架构·harmonyos
懿路向前18 小时前
【HarmonyOS学习笔记】2026-08-27 | 端插件踩坑与设计取舍
笔记·学习·harmonyos
夜雨声烦丿18 小时前
从需求到页面:日期计算器应用的 ArkTS 原生实现
开发语言·javascript·华为·harmonyos
梦想不只是梦与想20 小时前
鸿蒙 AGC:申请发布证书
harmonyos·appgallery·发布证书
大锅盖120 小时前
深色医疗青绿主题下ArkUI声明式架构:数字健康监测平台的多维数据可视化与状态管理实践
华为·harmonyos
小雨青年1 天前
【HarmonyOS 7 悬浮页签深度实战】04 HdsTabsController 如何协调页签切换与显隐
华为·harmonyos
贾伟康1 天前
【中国方言题库|19】HarmonyOS ArkTS 回归测试实战:覆盖启动、空数据、异常输入和重复点击
自动化测试·harmonyos·arkts·回归测试·hypium