在 2021 年 9 月 30 号,OpenHarmony 迎来了重大更新,发布了 3.0 长期支持版,这是今年发布的第二个长期支持版,也是首个真正意义上全量长期支持版本。

相较于 OpenHamrony 1.0 LTS 版本只支持小型和轻量系统,OpenHamrony 3.0 LTS 版本覆盖了小型、轻量和标准系统,从 IoT 设备到手机的系统全支持。
本文将会详细介绍我关注的 OpenHamrony 3.0 LTS 版本一些改变。
编译环境配置有所简化
在 OpenHarmony 3.0 系统中,搭建环境不再需要那么复杂的操作(环境最好为 20.04),大概需要 6 步即可以编译出你想要的结果。
这里列出具体的步骤,方便熟悉旧版本的读者做对比:
①安装依赖
sudo apt-get update && sudo apt-get install gnutls-bin gcc-arm-linux-gnueabi build-essential fakeroot dpkg-dev git-lfs build-essential gcc g++ make zlib* zip xsltproc x11proto-core-dev wget vim unzip u-boot-tools tzdata texinfo ssh scons python3-minimal python3-setuptools python3-pip python3-distutils python3-apt python3.8-distutils npm nfs-kernel-server mtools mtd-utils m4 locales libxml2-utils libx11-dev libreadline-dev libgl1-mesa-dev libffi* libc6-dev-x32 libc6-dev-i386 lib32z-dev lib32ncurses5-dev gperf gnupg git-lfs git-core g+±multilib g++ flex dosfstools default-jre default-jdk curl ccache build-essential bison binutils bc genext2fs ruby
②安装工具:repo 和 hc-gen
sudo curl -s https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 > /usr/local/bin/repo
③配置 git 相关参数,(可能也需要你把 ssh 公钥填到 gitee 设置中)。
git config --global user.email "xxx@mail.com"
git config --global user.name "xxx"
④创建代码目录并拉取代码:
mkdir OpenHarmony
cd OpenHarmony
repo init -u https://gitee.com/openharmony/manifest.git -b OpenHarmony-3.0-LTS --no-repo-verify
repo sync -c
repo forall -c 'git lfs pull'
⑤下载预编译工具:
./build/prebuilts_download.sh
⑥运行编译脚本(需自行调整参数)
编译 Hi3516DV300 镜像:
./build.sh --product-name Hi3516DV300 –ccache
编译 arm64 系统镜像:
./build.sh –product-name ohos-arm64 --ccache
编译 SDK 库:
./build.sh --product-name ohos-sdk –ccache
结果输出:
out/ohos-arm64-release/ohos-sdk/windows
新增了哪些功能
标准系统新增特性功能:
用户程序框架支持服务能力(ServiceAbility,DataAbility)和线程模型。
支持文件安全访问,即文件转成 URI 和解析 URI 打开文件的能力。
支持设备管理 PIN 码认证的基本能力。
支持关系型数据库、分布式数据管理基础能力。
支持方舟 JS 编译工具链和运行时,支持 OpenHarmony JS UI 框架应用开发和运行。
支持远程绑定 ServiceAbility、FA 跨设备迁移能力。
支持应用通知订阅与应用通知消息跳转能力。
支持输入法框架及支持输入基础英文字母、符号和数字。
相机应用支持预览、拍照和录像基础能力。
支持 CS 基础通话、GSM 短信能力。
支持定时器能力,提供定时时区管理能力。
在标准设备间的分布式组网下,提供应用跨设备访问对端资源或能力时的权限校验功能。
轻量和小型系统新增特性功能:
新增轻量级分布式能力增强,支持从轻量级系统启动标准系统上的 Ability。
软总线能力增强支持,提供认证通道传输能力,用于设备绑定。
轻量级全球化能力增强支持,新增 31 种语言支持。
轻量系统上新增权限属性字段及其写入接口,上层应用可通过该字段实现相关业务。
详细的介绍可以查看链接:
https://gitee.com/openharmony/docs/blob/master/zh-cn/release-notes/OpenHarmony-v3.0-LTS.md
挑几条大家比较关注的点来讲讲
①用户程序框架支持服务能力(ServiceAbility,DataAbility)和线程模型
②用户程序框架子系统能力得到了增强
了解详情请前往:
https://gitee.com/openharmony/appexecfwk_standard
方舟运行时子系统介绍:
https://gitee.com/openharmony/docs/blob/master/zh-cn/readme/ARK-Runtime-Subsystem-zh.md
方舟运行时使用指南:
https://gitee.com/openharmony/ark_js_runtime/blob/master/docs/ARK-Runtime-Usage-Guide-zh.md
④还有大家最为关注的软总线,这次软总线进行了多仓合一
了解详情请前往:
https://gitee.com/openharmony/communication_dsoftbus
⑤OpenHarmony 通过 CES(Common Event Service,公共事件服务)为应用程序提供订阅、发布、退订公共事件的能力
系统公共事件:系统将收集到的事件信息,根据系统策略发送给订阅该事件的用户程序。例如:系统关键服务发布的系统事件(例如:hap安装,更新,卸载等)。
自定义公共事件:应用自定义一些公共事件用来实现跨应用的事件通信能力。每个应用都可以按需订阅公共事件,订阅成功且公共事件发布,系统会把其发送给应用。
⑥提供了输入法的能力
⑦各种手机能力的补足
新加的 JS 的能力的仓
①基于 JS 的多线程能力:worker
通过 postMessage 完成 worker 线程与宿主线程的通信。具体的使用方法请参考:
https://gitee.com/openharmony/js_worker_module
具体的使用方法请参考:
https://gitee.com/openharmony/js_sys_module
③字符串编码:UTIL
具体使用方法可以参考:
https://gitee.com/openharmony/js_util_module
④解析,构造,规范化和编码 URLs:URL 接口
具体使用方法可以参考:
https://gitee.com/openharmony/js_api_module
⑤新的界面编写方式
启动器详情:
https://gitee.com/openharmony/applications_launcher
系统设置详情:
https://gitee.com/openharmony/applications_settings
系统界面详情:
https://gitee.com/openharmony/applications_systemui
OpenHarmony各个SIG兴趣小组进展
①Kernel-SIG 小组
详细的文档地址为:
https://gitee.com/openharmony/docs/blob/master/zh-cn/device-dev/porting/porting-linux-kernel.md
②新的 Dev-Board-SIG 小组
https://gitee.com/openharmony-sig/devboard
③Python-SIG 小组
https://gitee.com/openharmony-sig/python
④RISCV-SIG 小组
了解详情请前往:
https://gitee.com/openharmony-sig/riscv
⑤OpenBlock-SIG 小组
https://gitee.com/openharmony-sig/openblock
⑥EduDataSpecification-SIG 小组
⑦Industrial_Internet-SIG 小组
一个开发者面临的困境和思考
展望
详细的文档地址为:
https://gitee.com/openharmony/communication_softbus_lite/blob/master/README_zh.md
https://harmonyos.51cto.com/user/posts/13519852

求分享

求点赞

求在看
文章转载自鸿蒙技术社区,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




