8 月 7 日消息,开源鸿蒙近日在 gitee 发布了 OpenHarmony 4.0 Beta2 版本更新,带来了标准系统能力的持续完善。
此外,方舟开发框架 ArkUI-X 1.0.0 于 8 月 6 日迎来 Canary1 版本,主要能力范围包括:
- 应用开发范式:支持基于 ArkTS 的声明式开发范式。
- 应用开发模型:支持 Stage 开发模型。
- 开发者工具:提供 DevEco Studio(IDE)和 ACE Tools(命令行)两种 ArkUI-X 应用构建工具。
- 混合开发能力:ArkTS 声明式开发范式和 Stage 模型支持集成在现有 iOS / Android 应用中,通过现有应用加载,解析和运行。
- 跨语言调用能力:提供 FFI(Node-API)和平台桥接两种机制,用于 API 扩展和平台插件开发。
- 基础测试调试:支持单元 / UI / XTS 集成测试和 ArkTS 断点调试。
据介绍,方舟开发框架(IT之家注:简称 ArkUI)为 OpenHarmony 应用的 UI 开发提供了完整的基础设施,包括简洁的 UI 语法、丰富的 UI 功能(组件、布局、动画以及交互事件),以及实时界面预览工具等,可以支持开发者进行可视化界面开发。
ArkUI-X 进一步将 ArkUI 扩展到了多个 OS 平台:目前支持 OpenHarmony、HarmonyOS、Android、 iOS,后续会逐步增加更多平台支持。开发者基于一套主代码,就可以构建支持多平台应用。
开源鸿蒙 OpenHarmony 4.0 Beta2 更新内容:
应用框架
- 更新 ArkTS 卡片刷新方式,支持通过数据代理的方式刷新内容。
- ArkTS 卡片支持静态卡片配置、静态图展示。
ArkUI
- Xcomponent 组件支持 Texture 模式绘制、popup 支持位置自定义、弹框支持通过键盘 ESC 键逐层退出、ListItem 支持长距离左滑删除手势、ArkTS / JS 卡片支持渲染完成回调、Image / Text 组件支持隐私遮罩、ContextMenu 支持分段显示能力。
- 动画效果增强,包括:布局属性、背景图片大小位置属性、显隐属性支持隐式动效,list 支持 scrollToIndex 动效、Tabs 模糊动效、popup 出现 / 消失动效,支持自定义动画,满足开发者多种多样动画诉求。
- 开发效率增强:支持命名路由的能力,借助此能力可针对不同页面设置不同的切换动效;轻量级 ArkUI 框架支持定义全局数据对象,可进行应用内页面间的数据共享。
- 全局 API 支持 Stage 模型多实例场景。
应用包管理
- 支持对应用分发类型和附件信息的设置和查询。
- 支持通过文件扩展名列出支持打开该文件的应用列表,实现了文件扩展名与应用的匹配关系。
- 支持企业应用的安装管理,对于证书类型为“enterprise”的应用,安装需要申请“ohos.permission.INSTALL_ENTERPRISE_BUNDLE”。
分布式数据管理
- UDMF(统一数据管理框架)支持跨设备拖拽场景下对分布式目录的文件临时授权。
- 提供 RDBstore NDK 接口 :包含增 / 删 / 改 / 查 / 事务、数据加密、数据分级保护、备份 / 恢复能力。
- Key-Value 和分布式数据对象支持根据数据量自动选择数据同步的通道。系统会根据数据量大小自动选择蓝牙通道或基于 WiFi 的 P2P 通道进行数据的同步。
分布式软总线
- 支持对基于软总线连接的 link 信息进行管理。
- 支持会话级的传输能力协商,可通过协商确定设备间传输的能力。
分布式硬件
- 分布式场景下的音频录制时延性能得到优化。
- 分布式文件系统支持在以蓝牙引导的 P2P 连接环境下进行文件互访。
- 支持组网设备名称变化的监听。
文件管理
- 支持公共图片文件在设备端和云端进行同步(设备登录的帐号需开通云端服务),支持通过 picker 选择云端的图片。
- 支持应用定制备份恢复的目录。
- 支持公共图片的分类管理,用户可以在图库中通过相册对用户图片进行组织分类。
- 支持应用监听沙箱内的文件的增改删。
- 支持应用跨设备分享沙箱内的文件。
图形显示及窗口
图形
- 支持对选定区域取色,可选定区域后获得该区域的主色值、平均色值等参数并按需使用。
- 支持设置旋转中心在 Z 轴锚点的偏移,允许在旋转过程中修改渲染的锚点。
- 图形处理依赖的渲染库升级至 Skia 0310 新版本,提升了显示性能。
窗口
- 优化了 display 模块的参数值获取方式,从原先软件方式优化为从硬件直接获取真实值。
- 窗口控件化能力增强:窗口以控件化的方式支持窗口属性、子窗口、模态窗口、窗口效果、窗口装饰、亮灭屏流程、截屏录屏。
媒体
音频
- 支持音效框架:设备厂商可配置音效策略和加载自定义音效;应用可查询音频输出的音效模式,切换或关闭音效模式。
- 支持系统内录音能力:可根据音频场景属性筛选,录制系统内播放的音频数据。
- 支持获取音频设备显示名:播放对象详细信息内可获取当前播放输出归属的设备名。
媒体播放
支持音效参数配置,可以在音频框架支持音效的能力基础上进一步配置音效。
音视频编解码
- 支持通过 Native API 查询系统的音视频编解码能力。
- 支持通过 Native API 完成音视频封装,即将音频、视频等编码后的媒体数据,按一定的格式存储到文件里。
- 支持通过 Native API 完成音视频解封装,即从比特流数据中取出音频、视频等媒体帧数据。
事件通知
- 支持选定通知并批量删除通知。
- emitter 支持取消按条件指定订阅回调能力。
基础通信
- WiFi 支持后台扫描的能力。
- WiFi 支持 STA 模式下的随机 MAC 能力。
网络与通信
- 支持与服务器端通过 TCP Socket 进行通信。
- 支持用户将数据传送到远程服务器。
- 支持 HTTPS 证书的管理适配。
- 支持网卡代理。
系统服务管理
- 支持系统服务按需启动,例如外部调用、事件触发,同时支持在设备空闲时自动退出系统服务。
- 系统服务配置格式优化,使用 JSON 格式替代 XML 格式。
电源
- 新增接口,支持设置系统立即进入睡眠状态。
- 新增休眠源定制能力,支持根据不同的休眠源定制事件及行为。
- 新增唤醒源定制能力,支持根据不同的唤醒源定制唤醒事件。
多模输入
- 支持将键盘输入设备的原始事件映射为归一化交互的意图事件,使开发者在开发应用时无需关注输入行为是来自触控还是键盘。
- 支持用户根据个人习惯设置触控板功能的个性化配置:
- 支持两种触发模式映射鼠标左键功能: 按压、轻点。
- 支持两种触发模式映射鼠标右键功能:点按左 / 右下角、双指点按或轻点。
- 跟踪速度:支持 10 档速度调节。
- 支持两种交互模式映射鼠标滚轮功能:内容随手指移动方向、内容随手指反向移动。
主题框架
- 锁屏管理服务支持锁屏事件回调机制、静态 / 动态壁纸、查询锁屏时的业务状态。
- 壁纸管理服务支持自定义壁纸、锁屏 / 解锁操作、重置壁纸。
上传下载
支持查询上传和下载的任务、任务状态信息同步和任务记录持久化、任务状态查询和异常的恢复。
安全
加解密算法库框架
- 提供 DSA 数字签名算法能力。
- 提供 DSA、ECC、RSA 密钥解析和密钥参数的获取能力。
- 提供安全随机数生成算法类型的获取能力。
- 提供 SM4 密钥的随机生成与转换,以及加密解密能力。
- 提供 SM3 密钥的 HMAC 和 HASH 的能力。
- 提供 SM2 密钥的随机生成与转换、签名及验签、以及加密解密能力。
密钥管理
- 支持 HUKS 密钥加密保护。
- 支持 KeyAttestation 公钥证书中增加对密钥所属业务身份字段。
- 支持标准 HDI 南向接口。
设备互信认证
支持在以下两种场景的设备间互信认证流程中生成假名,支持识别及和标识设备的假名化名称。
- 对使用同帐号登录的多个设备进行互信认证。
- 对非同帐号的点对点互联的两个设备进行互信认证。
程序访问控制
- 优化权限管理的菜单呈现,拆分媒体和文件的权限组,相应权限的授权粒度更加精细化。
- 支持 treble 架构下对 SELinux 的兼容能力。
帐号
- 支持帐号授权能力扩展和三方应用使用帐号授权能力。
- 支持对域帐号插件的管理,从而支持域帐号管理和认证能力。
WebView
- W3C 能力补充完善:补充 Web Camera 能力,以及 bindContextMenu、Select、date 类型 input 等 H5 标签能力。
- 支持多渲染进程的进程拆分。
- 支持文字、图片基础拖拽能力。
- 支持 WebRTC 的视频会议能力(不含摄像头共享)。
- 支持渲染进程独立 SELinux 标签,增强安全基础能力。
ArkCompiler
- 方舟运行时支持 JSContext 功能;支持动态 PGO 功能,可采集运行期的类型和函数热点信息,并生成 AP 文件;支持动态 import 加载 NAPI 库。
- 方舟编译器 type 编译模式下前端编译工具链切换到 es2abc。
- NAPI buffer、object、arraybuffer、object type 接口功能补齐。
- Taskpool 支持任务中断和取消,支持定义任务组(TaskGroup),支持对任务的状态和调度信息进行打点,支持超长等待的任务进行识别和恢复。
- 编译构建能力提供 OpenHarmony 系统 user 和 root 不同权限版本的构建,user 版本能力同步支持 Wukong 测试工具和 XTS 测试能力。
- 编译工具链支持预览器上的调试能力。
DFX
- 提供统一的采集框架能力,方便开发者对应用的调试调测。
- 提供统一的 trace 采集能力。
- 提供 Native 的 HiTraceMeter 打点接口。
- 性能雷达提供工具类,方便各业务模块(子系统)在业务流程上传递性能埋点记录及结算性能数据。
内核
代码执行权限管控能力增强,新增了以下能力:
- 支持安全内存机制。
- 提供满足不同场景的代码执行权限管控策略。
- 提供代码执行权限管控的全生命周期管理能力。
- 支持解析可执行文件获取代码段信息。
- 支持代码页的完整性保护能力。
驱动
扩展设备驱动框架提供以下能力:
- 扩展设备驱动框架基于“驱动扩展 Ability(DriverExtensionAbility)”的能力,构建应用态扩展驱动包的开发、部署、安装、更新、卸载、运行能力,开放全流程生命周期管理能力。
- 支持三方设备厂商开发的非标准协议的可插拔 USB 设备扩展驱动包,正常安装到 OpenHarmony 系统。插入 USB 设备后,能正常识别 USB 设备并与扩展驱动包匹配。
- 支持三方应用通过扩展外部设备管理框架查询并绑定 USB 设备扩展驱动包,完成对扩展驱动包定制功能的操作。
相机驱动提供以下能力:
- 提供 USB 相机热插拔识别能力,支持开机启动检查识别和启动后热插拔识别。
- 支持 USB 相机的预览、拍照、录像能力,提供相机格式、分辨率查询和配置能力。
- 编解码驱动提供 JPEG 图片硬件解码加速能力,包括获取硬件解码信息,初始化 / 去初始化,解码,申请 / 释放 buffer,提升用户浏览图片流畅度体验。
- 传感器驱动提供温湿度传感器设备驱动能力,支持小型设备温湿度器件查询,器件使能 / 去使能,数据查询能力,丰富智能设备传感器能力。