消息来源:
https://cloud.tencent.com/developer/article/2456589
https://finance.sina.com.cn/7x24/2024-1 ... 4871.shtml
https://www.fx678.com/C/20241012/202410 ... 11054.html
https://www.163.com/dy/article/JEAI4MK805198CJN.html
10月12日讯,第三届OpenHarmony技术大会上,开源鸿蒙OpenHarmony 5.0 Release版本正式预发布,此外,32家OpenHarmony技术俱乐部亮相,首批30家OpenHarmony开发者协会启动。
------------------------------------------
OpenHarmony 5.0.0 Release发布
版本概述
OpenHarmony 5.0.0 Release 版本标准系统能力持续完善。相比 OpenHarmony 5.0 Beta1,Release 版本做出了如下特性新增或增强:
应用框架新增更多生命周期管理能力、提供子进程相关能力,可以对应用运行时的任务执行进行更精细的调度和管理;ArkUI 进一步开放自定义节点的渲染能力;应用包管理提升了应用打包效率,丰富了终端用户使用应用时的可操作场景(如创建应用分身、创建桌面快捷方式等);分布式数据管理能力进一步增强,在保证数据合理共享的前提下增强安全性,其他模块能力适配 Sendable 机制也得到了增强;文件管理进一步完善 Picker 的能力,对文件资源做到合理管控权限和合理使用;媒体在音视频播放、录制方面能力进一步增强,新增支持多个音视频、图片的编码格式,支持更细节的播控操作;相机提供更强大的能力,丰富终端用户拍照场景。
多个子系统进一步对标 ArkTS 能力补齐 NDK 的 C API 能力,如 ArkUI 适配三方框架的能力、数据管理 UDMF、图形绘制、播放框架、相机、图形编解码、网络管理、国际化、时间时区、输入法框架、剪贴板等;
应用框架
支持创建 JS / Native 子进程,开发者可以把耗时操作放到子进程中执行。
Ability 生命周期监听支持 onNewWant 等更多生命周期。
支持 Ability 在不主动销毁自己的情况下,将 AbilityResult 结果返回给调用方。
支持应用级别的字体设置
ArkUI
进一步增强了组件自定义能力,新增组件 modifier、ContentModifier 和 DrawModifier,支持基于已有组件新增属性、自定义组件内容和完全自绘制。
开放了自定义节点和 Native 的渲染节点
Navigation 组件能力增强,包括单双栏切换动效、转场动画的打断和接续,以及页面生命周期的监听能力。
控件视觉、动效和交互刷新,以及支持适老化、镜像语言和屏幕朗读。
菜单和弹窗类组件支持开发者组定义颜色、形状、圆角、大小、位置和阴影。
应用包管理
支持应用分身的接入和管理,应用可以通过简单的配置即可接入应用分身。
支持桌面快捷方式,用户可以动态添加快捷方式到桌面。
支持系统级 HSP 和 ArkWeb 独立升级能力,支持独立更新预置的应用。
支持 OTA 升级异常中断后恢复机制,OTA 升级流程中出现断电、服务 crash,重启时恢复 OTA 流程,继续安装、更新应用;
提供 cache 目录自动清理能力,支持存储管理在设备空间不足时自动清理 cache 目录。
支持 Native 软件包,提供 Native 软件包的打包、安装和卸载能力。
打包工具打包 app 时,对 app 包整体压缩,减少上架 app 的包大小。
基础通信
支持三方应用通过网络管理连接热点。
ArkCompiler
ArkTS 前端编译器
语法增强,编译目标从 es2017 切换到 es2021,支持编译带有 es2018~es2021 语法特性的源码文件。
混淆能力增强,支持异常堆栈还原的能力、文件粒度不混淆的功能、HAP 与 HSP 模块文件名混淆功能、白名单通配符功能。
ArkTS 运行时
支持模块懒加载,在变量被真正使用时再同步加载执行文件,提升应用启动性能。
并发能力增强,提供 Sendable 对象共享机制,优化对象跨线程通信性能;TaskPool 提供任务队列、长时任务、周期任务等功能。
调试功能增强,支持反向调试、Smart Stepinto 等功能。
调优功能增强,支持 hiperf/profiler 混合回栈、多实例 HeapDump 功能。
ArkTS 基础库
支持高精度浮点运算功能,提供 StringDecoder 字符流解码能力、stream 数据流处理能力,支持位向量。
JSVM
提供系统 JS 引擎,支持高性能运行 JS 和 WASM 的能力
编译构建
编译构建依赖的 CMake 版本从 3.16.5 升级到 3.28.2
关于详细解读,请查看[1]。
配套关系
表 1 版本软件和工具配套关系
软件 版本 备注
OpenHarmony 5.0.0 Release NA
Public SDK Ohos_sdk_public 5.0.0.71 (API Version 12 Release) 面向应用开发者提供,不包含需要使用系统权限的系统接口。
HUAWEI DevEco Studio(可选) 5.0.0 Release OpenHarmony 应用开发推荐使用。请点击这里获取[2]。
HUAWEI DevEco Device Tool(可选) 4.0 Release OpenHarmony 智能设备集成开发环境推荐使用。请点击这里获取[3]。
如何学习
目前 OpenHarmony 5.0.0 版本已经发布,如何学习,这里提供两个网址
一个是OpenHarmony 官网[4],一个是Gitee 仓[5]。
源码获取
方式一(推荐) 通过 repo + ssh 下载(需注册公钥,请参考码云帮助中心[6])。
从版本分支获取源码。可获取该版本分支的最新源码,包括版本发布后在该分支的合入。
代码语言:javascript
repo init -u
[email protected]:openharmony/manifest.git -b OpenHarmony-5.0.0-Release --no-repo-verify
repo sync -c
repo forall -c 'git lfs pull'
从版本发布 Tag 节点获取源码。可获取与版本发布时完全一致的源码。
代码语言:javascript
repo init -u
[email protected]:openharmony/manifest.git -b refs/tags/OpenHarmony-v5.0.0-Release --no-repo-verify
repo sync -c
repo forall -c 'git lfs pull'
方式二 通过 repo + https 下载。
从版本分支获取源码。可获取该版本分支的最新源码,包括版本发布后在该分支的合入。
代码语言:javascript
repo init -u
https://gitee.com/openharmony/manifest -b OpenHarmony-5.0.0-Release --no-repo-verify
repo sync -c
repo forall -c 'git lfs pull'
从版本发布 Tag 节点获取源码。可获取与版本发布时完全一致的源码。
代码语言:javascript
repo init -u
https://gitee.com/openharmony/manifest -b refs/tags/OpenHarmony-v5.0.0-Release --no-repo-verify
repo sync -c
repo forall -c 'git lfs pull'
最后欢迎大家持续关注 OpenHarmony。
参考资料
[1]请查看:
https://gitee.com/openharmony/docs/blob ... release.md
[2]请点击这里获取:
https://gitee.com/link?target=https%3A% ... ownload%2F
[3]请点击这里获取:
https://gitee.com/link?target=https%3A% ... 23download
[4]OpenHarmony官网:
https://docs.openharmony.cn/
[5]Gitee仓:
https://gitee.com/openharmony/docs/blob ... adme-CN.md
[6]码云帮助中心:
https://gitee.com/help/articles/4191