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叠完,狗头保命,嘻嘻😝)

相关推荐
limuyang23 小时前
PDF Viewer KMP(基于 chrome 的 PDFium 内核)
android·kotlin
lilian2334 小时前
HarmonyOS 7 新特性(二十五)|智慧手势:意图识别与误触治理
华为·harmonyos
贾伟康6 小时前
【时光清单|14】HarmonyOS ArkTS 主导航实战:统一页面入口、返回路径和参数校验
harmonyos·arkts·arkui·navigation·路由管理
心平气和量大福大6 小时前
android-控件-搜索框SearchView
android·gitee
2601_962177136 小时前
【MySQL篇】聚合查询,联合查询
android·java·mysql
壮哥_icon7 小时前
【Android】批量 VectorDrawable 动态分别修改 fillColor 和 strokeColor 的踩坑与终极解决方案
android
齐天qaq8 小时前
Android 系统 APK 分区与权限
android
心平气和量大福大8 小时前
android-控件-多选框CheckBox
android·gitee
pengyu10 小时前
【Kotlin 协程修仙录 · 大乘境 · 初阶】 | 跳出三界:协程在 KMP 与后端开发中的跨平台之道
android·kotlin