春风轻拂的4月,OpenAtom OpenHarmony(以下简称“OpenHarmony”)4.1 Release版本如期而至,开发套件同步升级到API 11 Release。

相比4.0 Release版本,4.1 Release版本应用开发的开放能力以全新的Kit维度呈现,提供给开发者更清晰的逻辑和场景化视角;新增4000多个API,应用开发能力更加丰富;ArkUI组件开放性和动效能力得到进一步增强;Web能力持续补齐,便于开发者利用Web能力快速构建应用;分布式能力进一步增强了组网稳定性、连接安全性等;媒体支持更丰富的编码、更精细的播控能力等等。期待开发者积极体验新特性并给我们提出宝贵意见。

本文仅描述新版本的部分新特性,请您参考OpenHarmony 4.1 Release Notes了解版本所有新增及增强功能。

OpenHarmony 4.1 Release Notes

https://gitee.com/openharmony/docs/blob/master/zh-cn/release-notes/OpenHarmony-v4.1-release.md

ArkUI

undefined 支持自定义组件扩展需求:框架提供基础组件的Modifier,开发者可继承实现自定义的Modifier,然后通过Modifier实现链式调用和参数传递。Modifier和自定义组件配合使用解决自定义组件传参的问题。Modifier机制支持单点属性更新。

undefined Canvas支持图形GraphicContext,提升自绘制能力和性能。

undefined 文本类控制支持属性字符串。

undefined 控件接入AI增强能力,包括:Image、Video、XComponent和Canvas控件支持实体识别;文本内容信息识别支持提取时间(日程)、地理位置。

undefined 状态管理能力优化:

undefined 新增接口在保留当前接口基本功能的情况下,无需调用aboutToBeDeleted进行解注册,且不会导致内存泄漏问题;

undefined @StorageLink、@StorageProp、@LocalStorageLink、@LocalStorageProp支持undefined、null和联合类型;

undefined private的普通变量或状态变量处理策略增强;

undefined 支持深度观察,可对类中的属性进行观察。

undefined 弹窗类组件自定义能力增强:

undefined 通过调用promptAction提供的接口,支持自定义显示/退出动效;

undefined 配置弹框样式:设置背景色、圆角、宽度、高度、边框(颜色、宽度)、阴影(偏移、圆角、透明度、颜色)、气泡箭头大小设置;

undefined 显示/退出交互:所有弹框将要弹出/退出时提供回调,以及对是否允许弹框退出提供回调。

undefined 滑动场景,优化单帧平均耗时。

Web

undefined 新增支持Web的无障碍能力。

undefined 新增页面跳转事件上报接口。

undefined 支持应用及网络代理、应用证书管理。

undefined 支持同层渲染能力(仅限xcomponent、button等部分组件)。

undefined 组件支持DOM构建完成后执行提前被注入的JS脚本。

undefined 开放RegisterJavaScriptProxy、RunJavaScript能力的C API接口。

undefined 资源拦截特性支持设置为ArrayBuffer数据类型。

图形图像及窗口

图形图像

undefined 系统支持可变帧率,提供API供业务接入。

undefined 支持HDR Vivid视频的渲染与显示。

undefined 图形NDK能力增强,支持为NativeImage添加OnFrameAvailableListener回调,支持为NativeWindow设置色域,新增支持opengl扩展接口,Drawing 能力进一步完善等。

undefined 支持录屏不录制特定窗口,以及隐私窗口录制成全黑帧画面的能力。

undefined 支持调整系统分辨率。

undefined 支持系统根据动画调节帧率,支持开发者调节应用业务帧率。

undefined 动效能力增强,支持硬件挖空,屏幕圆角,Navigation导航转场动画支持共享元素等。

undefined 图形渲染管线支持vulkan后端。

undefined 图形接入Drawing接口。

undefined nativeWindow支持设置metadata,适配HDR视频场景动态元数据随帧传递。

窗口

undefined 提供Window stage可交互状态通知。

undefined 提供全局搜索窗口类型。

安全

undefined 证书管理:支持开放用户ca证书路径、支持证书链校验和吊销检查能力、支持证书链构造的能力。

undefined 关键资产存储:针对应用开发者需要在本地加密存储关键敏感的短数据(如用户的账号密码、银行卡号等)诉求,系统提供关键资产加密存储的能力,以及相应的安全访问控制能力,包括:

undefined 支持关键资产写入,读取。

undefined 支持关键资产更新。

undefined 支持关键资产安全销毁。

undefined 支持关键资产访问控制。

程序访问控制

权限管理

undefined 支持在UIExtensionAbility界面上拉起权限弹窗。

undefined 权限使用记录增加锁屏状态记录。

undefined 支持应用在使用期间弹出允许权限的选项。

DLP权限管理服务

undefined 支持以时间维度对受控文件进行访问控制。

undefined 支持文档创建者在任意场景下可离线打开文档。

undefined 支持帐号未登录状态下,弹框进行帐号登录验证。

undefined 提供沙箱应用读取原始应用数据的机制和通路。

分布式数据管理

undefined UDMF支持数据类型标准化定义与描述、支持标准数据类型查询、支持数据访问授权与管理、支持应用自定义数据类型。

undefined 新增限制数据不打分类分级标签则不允许跨设备同步。

undefined preferences支持uint8Array格式数据流的修改、查询和持久化。

undefined RDB支持在应用指定的沙箱路径子目录下创建数据库。

ArkCompiler

undefined 动态import能力支持变量作为参数。

undefined 提供运行时对类方法插桩和替换的API。

undefined 支持用“#”声明类的私有成员。

undefined 支持Sendable类的跨线程序列化传输。

undefined 支持Ecmascript2022规范。

测试框架

自动化测试框架arkxtest

undefined 支持模拟鼠标滚轮滑动、滑动左右键双击等模拟UI操作能力。

undefined 支持Shell命令方式进行UI模拟操作能力,支持点击、滑动、双击、文本输入等常用操作能力。

undefined 提升UI测试框架查找控件信息效率。

undefined 增强dump信息内容,新增文字大小、文字颜色信息。

undefined 增加异步监听能力,监听系统弹框事件,获取其文本信息并返回。

测试调度框架xDevice

undefined 新增单次测试过程中自动复测失败项能力,并支持配置复测次数,最终生成一份测试报告。

undefined 优化测试报告,统一轻量系统、小型系统、标准系统的测试报告头信息。

undefined 新增支持测试套测试资源本地不存在时,可配置远程下载地址。

稳定性测试工具WuKong

undefined 新增page页面和Ability页面的配置能力,支持在测试过程中配置页面屏蔽,提升测试效率。

undefined 新增单一场景压测能力,支持针对某一控件循环注入操作事件,并支持配置循环次数。

性能开发工具SmartPerf Host

undefined 新增支持hilog、hisysevent的采集、分析和展示。

undefined 新增支持hiperf event count的分析和展示。

undefined 提升抓取trace的能力,动态可暂停可调试。

undefined 新增支持线程唤醒关系树的快速跟踪。

性能测试工具 SmartPerf Device

undefined 优化已有抓取内存、CPU数据的能力。

undefined 新增启动停止采集的命令。

undefined 新增定时获取截图、分辨率和刷新率的采集能力。

伴随OpenHarmony能力的不断提升和生态的持续扩展,我们见证了数以千计的开发者参与到OpenHarmony的开发和实践中,是大家的支持和贡献,加速了OpenHarmony生态的繁荣发展。未来,我们也诚挚期待与更多的共建单位和开发者一起携手并进,共赢未来。