景辰
2021.06.04 16:58

不吹不黑,咱们把华为鸿蒙掰开揉碎看一看

portai
I'm PortAI, I can summarize articles.

现在华为和肖战一样,根本就不能讨论,比恐怖分子还厉害,至少恐怖分子还可以谈判。

鸿蒙操作系统(HarmonyOS)出来后主要有两派观点:一派认为鸿蒙操作系统是 “自主的全场景分布式系统”,是国产之光,这一派以非技术人士为主;另一派则认为鸿蒙操作系统是 “Android 套壳”,是挂羊头卖狗肉,这一排以技术人士为主。

两派各执一词,吵得不可开交。

今天咱们就把华为鸿蒙掰开了揉碎了看一看,不吹,也不黑。
 

在评价之前,咱们得先厘清一下概念。现在华为鸿蒙其实包含两个部分:一个是大家熟知的手机鸿蒙操作系统;另一个则是万物鸿蒙。
 

这两个部分相互独立,但又起到相互协同的作用。

首先我们先说下这个万物鸿蒙。
 

华为的万物鸿蒙是基于 LiteOS 的,属于为内核架构,这项技术诞生于很早之前,那时候华为已经开始研发当时很火爆的万物互联操作系统,也就是 AIoT,华为采用的是 LiteOS,核心优点就是 Lite,非常轻量,体积小、省电,因此这系统主要是应用在一些智能设备上,比如摄像头、门铃、体温计等设备里。
 

在万物互联领域,LiteOS 对标谷歌的 Fuchsia、小米的 Vela、腾讯的 TencentOS Tiny 以及阿里巴巴的 AliOS。

厘清了万物鸿蒙,那么下一步咱们重点开始讲手机鸿蒙,也就是华为发布的 HarmonyOS。
 

因为 HarmonyOS 源码开源,知乎上有各位大神已经把 HarmonyOS 的源码扒完了,有兴趣的可以自行查阅,比较技术流,我挑几个重点说一下:


 

1. 目录结构和 Android 雷同,只是改了后缀,而且再将.hap 的后缀改回.apk 可以直接用 Android Studio 打开。

2.主代码主要干了一件事:重新定义了一套新的 UI,这就是为啥鸿蒙看起来和苹果似的原因,这是华为重写的。
 

3. 华为最关键的三个点是加入了分布式任务调度、分布式数据服务、分布式文件服务,从这里本来可以看到华为到底做了哪些优化,但是这几部分源码,华为在编译的时候全部隐藏掉了,关键代码一律不给看!Java 开发中,这种情况比较少见,只有一些重要的、底层的 API 中可能会出现,不过这个 ohos.jar 包源码全部隐藏还是第一次见!HarmonyOS 到底有多怕被人发现它的小秘密。

4. 总体来看,HarmonyOS = 原有的 Android 系统 - GMS + HMS + 分布式软总线 + 以 Ability 为核心的应用开发框架。

下面,我可以直接给出结论了。
 

华为手机鸿蒙操作系统,是基于 ASOP 开发的,什么是 ASOP 呢?它的全称是:Android Open Source Project,翻译成中文叫做:安卓开源项目。
 

先讲讲这个 Android Open Source Project 和安卓的关系吧。
 

目前,基于 Android 的手机操作系统一般都有三层结构:

第一层:Linux 内核。

Linux 系统是绝大多数开源软件的内核,比如现在的信创最火爆的麒麟 Linux 系统、谷歌的 Chrome、Android 等等,内核都是 Linux。
 

第二层:Android Open Source Project。

Android Open Source Project 就是基于 Linux 系统,为手机场景提供特定代码,它是 Android 的地基。

有趣的是,谷歌允许你在 Android Open Source Project 之上套壳,穿上一身新衣服,你就可以定制成为你需要的产品,谷歌公开了 Android Open Source Project 的代码,这就意味着这是个开源的东西,而如果你要用这玩意来定制你的东西,也意味着你的东西也必须得开源。

所以华为手机鸿蒙操作系统号称开源,其实不管华为主观意愿是否希望开源,华为都不得不开源,因为你基于 Android Open Source Project 开源系统开发,你就得遵守开源的规矩,明白了吗,所以,不要无脑神话开源行为,有时候是被迫,拿人手短啊,吃人嘴软啊,如果真的硬气,以后可以自己搭建一套 HUAWEI Open Source Project,那时候再开源,那肯定没有丝毫争议和质疑。

第三层:Android 操作系统。
 

谷歌自己是在 Android Open Source Project 之上加了 GMS 增强包,因此,目前全世界主流的 Android 操作系统应该是 Android Open Source Project+GMS。

但是尴尬的是,国内是不被允许使用 GMS 的,因此呢,各大手机厂商就只能在谷歌裸机版本的 Android Open Source Project 上套壳,华为套完壳叫 EMUI,小米套完壳叫 MIUI,魅族叫 Flyme,就这么个事。所以,从这个意义上来说,谷歌的安卓,华为的 EMUI,小米的 MIUI,魅族的 Flyme,是一类东西。都是在 Android Open Source Project 上加了些自己的东西。

而目前绝大多数 App 供应商和开发商都是基于 Android Open Source Project 来开发 App 的,因此,只要你们的手机系统是基于 Android Open Source Project 的,那么就能兼容大部分 App,这也是为什么华为手机鸿蒙操作系统出来之后,能让绝大多数 App 瞬间无缝衔接的原因。

这种闭门造车、出门合辙的事不是奇迹,都是事出有因。
 

华为手机鸿蒙,相较于之前做的 EMUI,有了很大的升级,如果之前的 EMUI 是辆八手奥拓的话,现在的鸿蒙已经是全新劳斯莱斯了。

那么,鸿蒙到底是 “自主的全场景分布式系统” 还是 “Android 套壳” 呢?

这个问题的关键,是看你说的 Android,指的是什么。

如果你指的是谷歌的 AOSP+GMS,那肯定不是,因为华为没用 GMS,事实上也用不了。

如果你指的是 Android Open Source Project,那就是了。但这也是必须的,不在 AOSP 基础上开发,怎么能兼容现存的安卓 APP?而且,基于 AOSP 套壳,不违法,只要遵守开源协议,谁也管不了,很明显,华为宣布开源了,遵守了规则。
 

但这个答案还不是我希望的,我想通过源码拆解获得一个准确答案,究竟是不是套壳。

通过我阅读技术流的源码拆解,我发现我没办法回答这个问题,你说它是 “自主的全场景分布式系统” 吧,它确实是从 Android 发展来的,而且底层代码还是 Android;但是你说是 “Android 套壳” 吧,它确实又有一些明显区别于 Android 的特色性差异。
 

因此,这里就演变为一个哲学问题了:忒修斯悖论。
 

忒修斯悖论是说有一艘在海上航行了几百年的船,期间不沉不坏是因为不间断的维修和替换部件。只要一块木板腐烂了,它就会被替换掉,以此类推,直到所有的功能部件都不是最开始的那些了。问题是,最终产生的这艘船是否还是原来的那艘特修斯之船,还是一艘完全不同的船?如果不是原来的船,那么在什么时候它不再是原来的船了?

华为鸿蒙如果换了 Android 一行代码,那么鸿蒙是 “Android 套壳” 吗?
 

华为鸿蒙如果换了 Android 一个模块,那么鸿蒙是 “Android 套壳” 吗?
 

华为鸿蒙若给 Android 加了一个模块,那么鸿蒙是 “Android 套壳” 吗?
 

针对于忒修斯悖论,全球上百代哲学家争论了 2000 年,至今还没有明确的答案,我觉得就凭咱们这点哲学底蕴,很难在学术层面得出结论了,索性搁置争议不讨论。
 

因为话说回来,如果基于 AOSP 套壳,可以被称为中国自主开发的操作系统的话,那么小米的 MIUI,魅族的 Flyme 也应该算中国自主开发的操作系统。

不管你个人觉得哪个好用,喜欢哪个,但他们本质上是一种东西,没有根本的差别。

咱们讲完这些事,大家就能明白,为什么很多人在网上要求小米、OPPO、VIVO、魅族用华为手机鸿蒙,但是这些厂商就是不表态了,因为他们太清楚华为鸿蒙干了一套什么事了,所以他们大概率不会用。

如果其他厂商要用华为手机鸿蒙,那么就意味着小米要放弃自己的 MIUI,魅族要放弃自己的 Flyme。

这几乎是不可能的,谁会将自己的发展命脉捆绑在一个友商手里呢,友商如果偷着给自己的华为手机定制鸿蒙系统,你不就傻了吗,哪天不开心,不给你用了,你不就直接死了吗?

当然,华为也不会让他们用手机鸿蒙,这是各家手机厂家的核心差异所在。

所以,网民们的热情是可以理解的。但是,可能是一厢情愿的多情了,他们大概率一个不愿给,一个不愿用,网民所设想的大同世界暂时是实现不了了。

好了,我们总结一下,什么是华为鸿蒙?
 

其实就是万物鸿蒙和手机鸿蒙的统称,很容易让人迷惑,他们之间有很多互动,比如手机音乐可以音响上放,这是手机连接了智能家居设施,小米之类的都能实现,只是基于通信协议层面的实现而已,你用苹果手机加上 OPPO 的智能音箱也可以实现,蓝牙就行呗,多大点事?

所以华为现在的万物鸿蒙 + 手机鸿蒙其他厂商也都有,比如小米的是 Vela+MIUI,谷歌则是 Fuchsia+Android Q,而阿里巴巴的则是 AliOS Things+AliOS。
 

只是大家现在没有把这两套东西绑定起一个统一的名字,现在华为有意无意地将两者混淆,这点不是很厚道。

华为鸿蒙确实是个手机操作系统,但是之前华为多次公开场合都是信誓旦旦地说要突破卡脖子的问题,但是现在华为自己都站出来承认是基于 Android Open Source Project 了,但是华为自来水海军们却还不承认,甚至还要引导一众海军鼓吹这是中国人自己的操作系统,不觉得有点尴尬吗?

我并不反对华为基于 Android Open Source Project 开发,甚至我非常支持,我国当年花重金购入瓦良格号,基于此开发出辽宁舰、山东舰,现在会有人在乎它们算不算俄罗斯套娃吗?

这种国之利器,只要真的做出来了,那怕只是能下水开起来,也是一件振奋人心、值得骄傲的事情。

所以,我反对的是很多粉丝的无脑吹。
 

咱们就面对现实,华为目前为止,就是和小米、魅族等一样借了同一家邻居家的锅,炒了个菜,不同的事,华为在菜的摆盘上下了些火候,口味更好了,但是目前为止大家都是炒菜类目,有一天华为能不能自己发明个锅,甚至是发明个厨房,我不怀疑,我甚至满怀期待,但是,现阶段,鸿蒙就是鸿蒙,别哄,也别蒙。

没有人会说 Android 是 iOS 套壳,也没有人会说微软是 Linux 套壳,所以有些标准还是非常明晰的,既然有争议,那就只能证明还有待进步,对吗?
 

实事求是地按规矩办事。
 

最后,我还得表态,我们还是要不遗余力地支持华为的,就像我们支持小米、魅族等一样,因为他们都是我们中国的企业。
 

那么,怎么用行动支持华为鸿蒙呢?

很简单,就是买华为手机,目前也只有华为手机能用手机鸿蒙,华为短时间内不会给别的厂家开放手机鸿蒙的,就算愿意,友商大概率也不会用的,谁家都有这套玩意。

极端点猜测,甚至华为荣耀现在拆分出去之后,甚至都未必会使用华为手机鸿蒙,因为荣耀拆分出去还是寄希望于重返美国市场的,如果用了华为手机鸿蒙,必然会带来巨大的变数。
 

所以,想要支持华为手机鸿蒙,就只能买华为手机了。

一个手机操作系统的生存临界规模大概是 14%,市场占有率只有超过了 14%,才有可能活下去,所以现在不要猛吹华为手机鸿蒙是不是突破了卡脖子,赶紧先用行动支持起来,先突破了 14% 吧,这是卡心脏的事。

为鸿蒙加油,为鸿蒙祝福!

The copyright of this article belongs to the original author/organization.

The views expressed herein are solely those of the author and do not reflect the stance of the platform. The content is intended for investment reference purposes only and shall not be considered as investment advice. Please contact us if you have any questions or suggestions regarding the content services provided by the platform.