画个图更容易看清楚。
下面是由谷歌开发,并开源的原生安卓架构图(示意):
从图中可以看出,原生的安卓由内核、子系统、UI构成。
而一个安卓APP的运行环境,并不强依赖UI,而仅依赖于安卓子系统和内核。
同时,因为原生安卓系统是开源的,所以在开源代码的基础上,其他厂家就有机会定制自己的UI,从而推出个性化的安卓系统。
例如,下图就是被替换(修改)了UI的EMUI架构图(示意):
从图中可以看出,所谓的EMUI仅仅是替换(修改)了原生安卓系统的UI而已,原生的内核及各个子系统都得到了保留。
而第三方开发的应用程序(例如微信),由于仅依赖于原生安卓的内核和子系统,所以才可以在各个XXUI(例如EMUI、MUI)上平滑迁移。
再来说华为的鸿蒙系统。
首先和安卓一样,整个鸿蒙OS也是由内核、子系统和UI构成,如下:
但由于鸿蒙是一个全新的的系统,所以鸿蒙OS的内核和子系统并不兼容安卓。原来安卓上的APP也不能在鸿蒙上直接运行。
而鸿蒙OS的期望受众主要是一些资源有限的设备,例如手表、电视、车载设备等。
但是,目前的安卓已经有针对此类设备的版本,且已经存在了大量的应用。所以说,在很大程度上,鸿蒙OS和安卓存在竞争关系。
而一个系统能否兴起,关键在于是否能吸引足够多的开发者,从而形成生态圈。
但是,在生态圈没有形成之前,鸿蒙就面临如何吸引开发者,把原来安卓上的APP迁移到鸿蒙上的问题。如果这个问解决不好,就意味着鸿蒙的生态圈难以形成。
如果是这样的话,不管鸿蒙OS的技术指标是多么优秀,可能都无法取得市场的认可,很有可能重蹈当年微软windows phone的覆辙。
对此,华为的应对方案是提供一个编译器,把安卓上的APP源码编译成能在鸿蒙上运行的APP,如下:
这样,就把原来安卓上的大量APP,以最低的代价迁移到鸿蒙上来,从而快速的形成应用群。
但操作系统的竞争从来都是残酷无情的,只有第一和第二,而不会有第三。因此,在这样一个格局基本定型的市场,鸿蒙能否杀出一条血路,风险和机遇一样大。
我们拭目以待!