4 月 1 日消息,开源鸿蒙 OpenHarmony 4.1 Release 版本于昨日发布,开发套件同步升级到 API 11 Release。
相比 4.0 Release 版本,4.1 Release 有以下提升:
新增 4000 多个 API,应用开发能力更加丰富;
应用开发的开放能力以 Kit 维度呈现,提供给开发者更清晰的逻辑和场景化视角;
ArkUI 组件开放性和动效能力得到进一步增强;
Web 能力补齐,便于开发者利用 Web 能力快速构建应用;
分布式能力进一步增强了组网稳定性、连接安全性等;
媒体支持更丰富的编码,支持更精细的播控能力等等。
IT 之家附 OpenHarmony 4.1 Release 更新日志如下:
ArkUI
支持自定义组件扩展需求:框架提供基础组件的 Modifier,开发者可继承实现自定义的 Modifier,然后通过 Modifier 实现链式调用和参数传递。Modifier 和自定义组件配合使用解决自定义组件传参的问题。Modifier 机制支持单点属性更新。
Canvas 支持图形 GraphicContext,提升自绘制能力和性能。
文本类控制支持属性字符串
控件接入 AI 增强能力,包括:Image、Video、XCopmonent 和 Canvas 控件支持实体识别;文本内容信息识别支持提取时间(日程)、地理位置。
状态管理能力优化:
新增接口在保留当前接口基本功能的情况下,无需调用 aboutToBeDeleted 进行解注册,且不会导致内存泄漏问题;
@StorageLink、@StorageProp、@LocalStorageLink、@LocalStorageProp 支持 undefined、null 和联合类型;
private 的普通变量或状态变量处理策略增强;
支持深度观察,可对类中的属性进行观察。
弹窗类组件自定义能力增强:
通过调用 promptAction 提供的接口,支持自定义显示 / 退出动效;
配置弹框样式:设置背景色、圆角、宽度、高度、边框(颜色、宽度)、阴影(偏移、圆角、透明度、颜色)、气泡箭头大小设置;
显示 / 退出交互:所有弹框将要弹出 / 退出时提供回调,以及对是否允许弹框退出提供回调。
滑动场景,优化单帧平均耗时。
应用框架
应用正常退出时会清理 temp 目录,提升安全性并减少系统存储空间消耗。
Extension 管控能力增强:新增了 ServiceExtension 的后台管控以及统一超时机制。
ArkTS 卡片能力增强:新增了透明卡片、数据代理刷新、单色模式和锁屏卡片能力。
应用包管理
系统级 HSP 支持 OTA 升级;
新增了模块化开发包大小优化指导。
分布式软总线
构建软总线传输 QoS 接口能力,更优管控底层链路资源并提供选路决策,提升分布式业务体验。
子系统规格能力持续增强,选路增加连接可靠性确认能力、支持感知资源情况动态设置连接参数等。
完成子系统 DFX 机制增强,如:支持互联雷达打点、支持上层分布式业务统计以及支持对组网监控事件进行业务告警。
IPC 支持引用技术查询和时间戳查询的接口,以及维测能力增强。
分布式数据管理
UDMF 支持数据类型标准化定义与描述、支持标准数据类型查询、支持数据访问授权与管理、支持应用自定义数据类型。
新增限制数据不打分类分级标签则不允许跨设备同步。
preferences 支持 uint8Array 格式数据流的修改、查询和持久化。
RDB 支持在应用指定的沙箱路径子目录下创建数据库。
图形图像及窗口图形图像
系统支持可变帧率,提供 API 供业务接入。
支持 HDR Vivid 视频的渲染与显示。
图形 NDK 能力增强,支持为 NativeImage 添加 OnFrameAvailableListener 回调,支持为 NativeWindow 设置色域,新增支持 opengl 扩展接口,Drawing 能力进一步完善等。
支持录屏不录制特定窗口,以及隐私窗口录制成全黑帧画面的能力。
支持调整系统分辨率。
支持系统根据动画调节帧率,支持开发者调节应用业务帧率。
动效能力增强,支持硬件挖空,屏幕圆角,Navigation 导航转场动画支持共享元素等。
图形渲染管线支持 vulkan 后端。
图形接入 Drawing 接口。
nativeWindow 支持设置 metadata,适配 HDR 视频场景动态元数据随帧传递。
窗口
提供 Window stage 可交互状态通知。
提供全局搜索窗口类型。
媒体
支持通话类应用接入媒体会话。
支持投播组件的颜色自定义和状态监听。
音视频编解码支持 AVBuffer 结构,支持系统数据零拷贝。
解封装新增支持 AMR / MKV 规格。
相机
对相机 PipeLine 代码进行了优化,PipeLine 各流解耦,允许不同流配置不同的分辨率。
补全 USB 相机驱动功能,可控制 USB 相机自动 / 手动的曝光、对焦以及白平衡。
添加私有 TAG 通道,定义了私有 TAG 实现方式,允许设备厂商自己定义相机 Metadata TAG。
事件通知
支持系统应用发送实况窗类型的通知。
Emitter:支持订阅字符串类型事件;发送事件时传递的数据支持可序列化类型;支持获取订阅者数量。
支持应用只接收自身发布的自定义公共事件。
公共基础类库
支持在 HAR / HSP 中创建 Worker。
TaskPool 支持在执行过程中往宿主线程发送消息。
通信与连接
NFC 提供 HCE 卡模拟能力。
在系统设置中可显示和设置默认支付应用处理,支持识别默认支付应用的变更。
Wi-Fi 提供热点类型的查询,可查询当前连接热点是否为手机热点。
支持将 Wi-Fi 作为热点,并支持将接入的 STA 设备添加到黑名单的能力。
位置
支持通过 sendCommand 接口删除辅助数据,用于支持冷热启动测试。
支持地理编码,逆地理编码,查询地理编码服务状态等接口。
支持在 MDM 管控场景下,MDM 调用位置服务接口强制开启或关闭位置服务功能。
电源
对 DisplayPowerManager 的代码结构进行了调整,亮度管理功能模块变为独立的模块。
新增支持设备关机状态下充电动画显示,充电电量可变化更新。
安全
证书管理:支持开放用户 ca 证书路径、支持证书链校验和吊销检查能力、支持证书链构造的能力。
关键资产存储:针对应用开发者需要在本地加密存储关键敏感的短数据(如用户的账号密码、银行卡号等)诉求,系统提供关键资产加密存储的能力,以及相应的安全访问控制能力,包括:
支持关键资产写入,读取。
支持关键资产更新。
支持关键资产安全销毁。
支持关键资产访问控制。
程序访问控制权限管理
支持在 UIExtensionAbility 界面上拉起权限弹窗。
权限使用记录增加锁屏状态记录
支持应用在使用期间弹出允许权限的选项。
DLP 权限管理服务
支持以时间维度对受控文件进行访问控制。
支持文档创建者在任意场景下可离线打开文档。
支持帐号未登录状态下,弹框进行帐号登录验证。
提供沙箱应用读取原始应用数据的机制和通路。
ArkCompiler
动态 import 能力支持变量作为参数。
提供运行时对类方法插桩和替换的 API。
支持用“#”声明类的私有成员。
支持 Sendable 类的跨线程序列化传输。
支持 Ecmascript2022 规范。
资源管理
支持 module.json 配置文件中通过右键菜单添加资源索引。
支持对 resfile 资源目录打包编译。
支持基于资源名称返回资源 id。
USB
补齐 USB 服务设备管理能力,支持全设备、按设备类型、指定设备的禁用和解禁,并支持重启、热插拔场景下的禁用策略持久化能力。
优化 USB 服务鉴权方式,新增访问控制权限,细化系统服务、系统应用的 USB 调用权限。
修复 USB 服务批量传输、控制传输的接口漏洞,支持传输接口端到端可用,性能满足要求。
多模输入
支持双击按压电源键拉起 ability。
支持自定义鼠标光标。
多模输入设置鼠标样式优化。
支持按键监听按优先级处理的能力。
支持光标大小、颜色的设置,支持动画光标样式。
泛 Sensor
支持传感器数据精度的上报,使系统可感知不同设备传感器精度,优化应用适配。
新增传感器、振动相关能力的 C API 接口。
自定义振动格式进行扩展,新增支持 curve 字段描述复杂的连续振动效果。
设备管理
小型设备平台上支持 @ohos.deviceInfo.d.ts 的相关 API。
测试框架自动化测试框架 arkxtest
支持模拟鼠标滚轮滑动、滑动左右键双击等模拟 UI 操作能力。
支持 Shell 命令方式进行 UI 模拟操作能力,支持点击、滑动、双击、文本输入等常用操作能力。
提升 UI 测试框架查找控件信息效率。
增强 dump 信息内容,新增文字大小、文字颜色信息。
增加异步监听能力,监听系统弹框事件,获取其文本信息并返回。
测试调度框架 xDevice
新增单次测试过程中自动复测失败项能力,并支持配置复测次数,最终生成一份测试报告。
优化测试报告,统一轻量系统、小型系统、标准系统的测试报告头信息。
新增支持测试套测试资源本地不存在时,可配置远程下载地址。
稳定性测试工具 WuKong
新增 page 页面和 Ability 页面的配置能力,支持在测试过程中配置页面屏蔽,提升测试效率。
新增单一场景压测能力,支持针对某一控件循环注入操作事件,并支持配置循环次数。
性能开发工具 SmartPerf Host
新增支持 hilog、hisysevent 的采集、分析和展示。
新增支持 hiperf event count 的分析和展示。
提升抓取 trace 的能力,动态可暂停可调试。
新增支持线程唤醒关系树的快速跟踪。
性能测试工具 SmartPerf Device
优化已有抓取内存、CPU 数据的能力。
新增启动停止采集的命令。
新增定时获取截图、分辨率和刷新率的采集能力。
DFX
提供 CPU、GPU、内存、IO、网络、trace 采集能力。
故障类型数据生态开放。
HiDebug 支持应用运行时资源信息采集。
HiProfiler 支持高功耗应用在 CPU、GPS、AUDIO、DISPLAY、GPU 的深入调优;支持动效场景耗时分析(启动、退出、转屏、转场、滑动);支持 ftrace 数据轻量化采集。
HiProfiler / HiDumper 联合提供内存进程扩展内存信息的采集与增强。
HiTrace 支持轻量化及长时间采集。
HiPerf 支持符号解析和栈聚合能力。
上传下载
支持多个前端模式任务与后台模式任务共享任务数量的能力。
支持监听后台任务的状态和进度。
支持任务的优先级,同样是前端(或者后台)模式的任务,也可以使用优先级来调整执行顺序。
自动使用系统级代理。
输入法框架
优化了 Webview 获焦场景的输入法体验。
优化了窗口焦点切换场景下的输入法体验。
新增支持安全模式输入法。
新增支持 Logo 键 + Space 切换输入法。
新增输入法切换列表控件。
时间时区
支持通过系统参数配置 NTP 服务器地址,最多支持配置 5 个。
支持通过系统参数配置时间时区自动同步开关。
全球化
支持应用语言列表的获取。
支持日期快速计算。
支持文本时间识别。
支持设置和获取应用偏好语言。
支持时段按不同国家或地区的习惯进行表达。
AI
MindSpore Lite 轻量化端侧学习能力开放 C API。
升级
支持差分多线程升级的能力。
增加升级过程中硬件故障重试机制,提升升级可靠性。
正常模式下的语言参数能同步更新到升级阶段使用的 updater 简化系统中。
Web
新增支持 Web 的无障碍能力。
新增页面跳转事件上报接口。
支持应用及网络代理、应用证书管理。
支持同层渲染能力(仅限 xcomponent、button 等部分组件)。
组件支持 DOM 构建完成后执行提前被注入的 JS 脚本。
开放 RegisterJavaScriptProxy、RunJavaScript 能力的 C API 接口。
资源拦截特性支持设置为 ArrayBuffer 数据类型。