5分钟速通鸿蒙开发番外篇:HarmonyOS和OpenHarmony

前言

相信大家在刚开始接触鸿蒙开发的时候经常看到HarmonyOSOpenHarmony 频繁的出现在文章和文档之中,那么这两个名词分别是什么意思,他们之间又有什么联系呢?本文将通过现有的文章和网站内容并与Google的AOSPAndroid 做对比,带大家了解清楚HarmonyOSOpenHarmony有关的内容。有任何错误或者可以补充的 欢迎在评论区提出,谢谢大家捏❤️!

AOSP和Android

在开始介绍鸿蒙之前,让我们先看看大家所熟悉的AOSPAndroid之间的关系吧。

AOSP

AOSP全称:Android开源项目(Android Open Source Project) ,是由Google主导的的开源项目,通过它你可以编译出在智能设备上运行的纯净操作系统,就像一个毛坯房一样,一个房子的内在和结构都具备,你可以在它之上自由发挥,打造你自己的专属的操作系统。

Android

Android,在首字母大写的时候为一种商用属性,代表的是Google的商标,Android操作系统是Google在AOSP之上打造的智能设备操作系统,概括来说就是:开源部分AOSP + 闭源部分(例如GMSGoogle Mobile Service

OpenHarmony和HarmonyOS

而OpenHarmony和HarmonyOS和上述的AOSP和Android也有是异曲同之处,并且早在2021年6月4日华为就发布了 《关于规范HarmonyOS沟通口径的通知》 对于统一口径发表该篇通知。

OpenHarmony

OpenHarmony是由开放原子开源基金会进行管理。开放原子开源基金会由华为、阿里、腾讯、百度、浪潮、招商银行、360等十家互联网企业共同发起组建,目的搭建一个智能终端设备操作系统的框架和平台 ,促进万物互联产业的繁荣发展,是由华为捐献的"鸿蒙操作系统"的基础能力 + 其他参与者的贡献组成的开源项目

项目架构如下:

HarmonyOS

HarmonyOS又叫华为智能终端操作系统鸿蒙OS ,是基于OpenHarmonyAOSP 打造的商用版本的操作系统,现在的搭载鸿蒙操作系统的手机之所以能够运行Android软件就是因为是因为HarmonyOS兼容了AOSP应用,(PS:不知道以后会不会不支持🐶。

关系类模糊概括为下图:

HarmonyOS具有以下特点:

  • 一是一套操作系统可以满足大大小小设备需求,实现统一OS,弹性部署
  • 二是搭载该操作系统的设备在系统层面融为一体、形成超级终端,让设备的硬件能力可以弹性扩展,实现设备之间硬件互助,资源共享
  • 三是面向开发者,实现一次开发,多端部署

总结

可以看出,与AOSP和Android的关系类似,HarmonyOS是华为基于OpenHarmony开源项目所打造的商用操作系统 ,也是开源+部分闭源 的模式,只不现阶段过为了能运行Android应用也对AOSP做了兼容,而所谓的 鸿蒙生态 不仅仅包括了上述的HarmonyOS和OpenHarmony,也包括了鸿蒙开发语言(ArkTS)声明式UI框架(ArkUI)开发工具(DevEco Studio) 等等。

虽然现在开发者对于HarmonyOS应用开发颇有微词,存在许多不足的地方,但我相信鸿蒙开发还是充满着未来的!(buff叠完,狗头保命,嘻嘻😝)

相关推荐
youtootech2 小时前
HarmonyOS《柚兔学伴》项目实战09-待办列表 UI——List+ForEach+滑动删除
数据结构·ui·华为·list·harmonyos
不羁的木木2 小时前
HarmonyOS APP实战-基于Image Kit的图像处理APP - 第6篇:图片滤镜效果实现
图像处理·深度学习·harmonyos
拥抱太阳06163 小时前
HarmonyOS 应用开发《掌上英语》第9篇—ArkTS @ObservedV2 + @Trace 响应式编程精讲
华为·harmonyos
拥抱太阳06164 小时前
HarmonyOS 应用开发《掌上英语》第10篇——@Local vs @Param vs @Trace 组件状态管理三剑客
华为·harmonyos
-SOLO-4 小时前
停止gradle命令
android
_祝你今天愉快5 小时前
Android Binder 驱动 - 启动 ServiceManager 进程
android
农村小镇哥5 小时前
ThinkPHP-MVC什么是框架
android
换元不配限5 小时前
Jetpack Compose 状态管理指南
android·状态管理·compose·状态·单向数据流·jetpack compose·状态容器
爱笑鱼8 小时前
JNI(二):Java 里的一个 long,为什么能找到 C++ 对象?
android
爱笑鱼9 小时前
JNI(一):nativePollOnce() 到底去了哪里?
android