对于全场景,分布式理解,我们可以想一下华为自家的多屏协作,以及电脑,平板和手机可以很方便实现在电脑上操作平板,手机。
-----深度解析一下,这里,只是华为自己的鼓吹罢,什么多屏协作,就是一个伪命题。比如他们所说的智慧屏,说人话就是Android电视,协作有意义,毛意义都没有,电视算是有一点公众资源性质,比如你在看足球,看得正Happy,或者你小孩看动画片正开心,你没事来协作一下,不是搞笑吗。而且这个多屏协作的前提,必须是同一个局域网,否则数据传输会卡住。另外一个层次,这里的软总线,其实就是一个 局域网应用协议,一个人也不同时打开笔记本电脑,平板,是来显摆吗?
到此应该有一个疑问,如果不用鸿蒙 OS,能不能实现以上交互?多屏协同,多设备协同?
答案是可以的,官方有提到,他们把鸿蒙 OS 一些能力,例如分布式提出来放到 EMUI 上。
我们在华为的开发平台上可以看到一些 kit 和鸿蒙有关的有设备虚拟化、HiCar、HiLink、碰一碰等。
这些 kit 是可以让设备在不上鸿蒙的情况下,实现全场景,分布式。他们做的类似做一个中间层,App 和设备端分别接入这些 kit 的 sdk。
那么和直接用鸿蒙 OS 有什么区别呢?开发会上官方给出了答案,不上鸿蒙也是可以实现的,不过鸿蒙 OS 的性能会更好一点。
设备虚拟化能力和碰一碰。设备虚拟化能力(DeviceVirtualization Engine),是通过虚拟化技术将相关设备或器件打造成手机器件或能力的延伸
它可以将家中的电视、摄像头和音箱虚拟为手机的屏幕、Camera 和 Mic/Speaker,将穿戴设备作为手机的虚拟 Sensor,实现手机为中心的全场景体验。
此处又应该有疑问,这个设备虚拟化和我们平时用的投屏,蓝牙音箱有什么区别?
灵活性,投屏,蓝牙音箱,蓝牙话筒是实现单一功能设备。用户可以根据需要选择所需的设备。
应用级的,举个例子,可能开会需要,在会议 App 才需要话筒音箱。来电了依然是用手机上的话筒听筒。
可扩展性,,除了常见的多媒体。他这个还支持外接传感器,马达,消息通知等。
碰一碰能力(OneHop Engine)是通过 NFC 来解决 App 跨设备接续难、设备配网难、传输难的问题的一个方案。
--------说实在的,这个NFC的基本功能夸大的过了头,华为不过是自己内部定义了一套Nfc tag读写规范,能按照自己的Api,读写,对于其他厂商的Nfc,还是一样,无能为力,尽管Nfc,有可以读写的标准,但没有定义数据格式的内容,导致了无法统一使用。
例如,美的电器接入碰一碰可以做到免安装配网。这点十分方便,特别是家有老人。
之前的配网流程起码分成 3 步,安装 App,扫码,配置。而这套方案就只要 3 秒。
设备开发
针对设备开发者,OpenHarmony 采用了组件化的设计方案,可以根据设备的资源能力和业务特征进行灵活裁剪,满足不同形态的终端设备对于操作系统的要求。
可运行在百 K 级别的资源受限设备和穿戴类设备,也可运行在百 M 级别的智能家用摄像头/行车记录仪等相对资源丰富的设备。
我先讲一下设备开发的限制,目前开源的仅支持 128k~128M 设备。而电视的运行内存一般在 2G 以上,普遍 3~4G。那实际上可以满足除了电视,手表 wear,手机的大部分设备。
开发流程是源码获取/组件管理→编码实现逻辑→编译→烧录,按官网教程走一遍就能在开发板板上跑起来了。
前面说到的一些 kit , 设备虚拟化和碰一碰也是可以用在设备开发上的。不过设备虚拟化,DVKit SDK 预计 2020 年 12 月底才提供。
还有碰一碰,以下是官方提供的一个打印机通过碰一碰实现文件传输的例子:
华为的鸿蒙发布计划:明年中发布 4G 以下,4G 以下应该对应车机和 wear。
年底发布 4G 以上,这个应该是对应手机。手机的话大家都认为的意义不是很大,也不太可能成为主流,我也是这么认为。
我个人认为鸿蒙的发力点应该是在电视,穿戴,车机上,以及提供极致的生态体验!
根据官方的定义,HarmonyOS是一款“面向未来”、面向全场景(移动办公、运动健康、社交通信、媒体娱乐等)的分布式操作系统。在传统的单设备系统能力的基础上,HarmonyOS提出了基于同一套系统能力、适配多种终端形态的分布式理念,能够支持多种终端设备的能力。
对消费者而言,HarmonyOS能够将生活场景中的各类终端进行能力整合,形成一个“超级虚拟终端”,可以实现不同的终端设备之间的快速连接、能力互助、资源共享,匹配合适的设备、提供流畅的全场景体验。
对应用开发者而言,HarmonyOS采用了多种分布式技术,使得应用程序的开发实现与不同终端设备的形态差异无关,降低了开发难度和成本。这能够让开发者聚焦上层业务逻辑,更加便捷、高效地开发应用。
对设备开发者而言,HarmonyOS采用了组件化的设计方案,可以根据设备的资源能力和业务特征进行灵活裁剪,满足不同形态的终端设备对于操作系统的要求。