开源鸿蒙 OpenHarmony 4.0 Beta2 发布,多平台开发框架 ArkUI-X 首发

系统 OpenHarmony
ArkUI-X 进一步将 ArkUI 扩展到了多个 OS 平台:目前支持 OpenHarmony、HarmonyOS、Android、 iOS,后续会逐步增加更多平台支持。开发者基于一套主代码,就可以构建支持多平台应用。

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,提升用户浏览图片流畅度体验。
  • 传感器驱动提供温湿度传感器设备驱动能力,支持小型设备温湿度器件查询,器件使能 / 去使能,数据查询能力,丰富智能设备传感器能力。
责任编辑:姜华 来源: IT之家
相关推荐

2021-08-13 10:09:36

鸿蒙HarmonyOS应用

2011-12-13 20:47:33

iOS 5.1

2009-10-26 09:16:08

BigInteger类

2023-05-09 11:39:12

鸿蒙开源

2013-06-25 10:13:11

iOS7WWDC苹果

2021-06-29 06:47:24

苹果macOSmacOS Monte

2023-10-27 06:33:14

鸿蒙开发套件

2011-09-27 10:40:48

Ubuntu 11.1

2009-02-02 09:13:50

Windows7Windows微软

2013-10-10 15:08:36

UbuntuUbuntu 13.1gnome

2021-02-22 14:55:41

鸿蒙HarmonyOS应用开发

2009-10-28 09:23:27

WF4.0 Beta2

2012-06-12 13:23:58

LinuxLinux Deepi

2022-12-02 18:26:33

开源鸿蒙OpenHarmon

2024-01-18 15:24:06

Rust开发鸿蒙OH4.0

2022-01-05 20:24:40

鸿蒙HarmonyOS应用

2011-02-17 16:59:00

VS.NET 2010

2012-03-12 12:49:14

JavaExpressionJ

2011-10-10 10:33:26

Chrome远程桌面Chrome Remo
点赞
收藏

51CTO技术栈公众号