雖說(shuō)此前我們談HarmonyOS 2.0系統(tǒng)的文章都反復(fù)提到,這是個(gè)面向“全場(chǎng)景”的操作系統(tǒng),而不單是手機(jī)。毋庸置疑的是,HarmonyOS究竟何時(shí)登陸手機(jī),恐怕是最多人關(guān)心的話(huà)題。
昨天華為在北京召開(kāi)了一場(chǎng)HarmonyOS 2.0手機(jī)開(kāi)發(fā)者Beta活動(dòng),用華為消費(fèi)者BG軟件部副總裁楊海松的一句話(huà)來(lái)回答,手機(jī)何時(shí)能用上HarmonyOS的問(wèn)題最合適,那就是:“面向開(kāi)發(fā)者的beta,不就是面向消費(fèi)者鴻蒙系統(tǒng)手機(jī)的前奏嗎?”
昨天電子工程專(zhuān)輯已經(jīng)發(fā)布了有關(guān)HarmonyOS 2.0手機(jī)應(yīng)用開(kāi)發(fā)者Beta版的新聞,本文就嘗試勾勒一下這個(gè)所謂的手機(jī)開(kāi)發(fā)者Beta版,對(duì)于北向開(kāi)發(fā)者而言,究竟意味著什么,有哪些改進(jìn)。

在閱讀本文前,建議閱讀我們此前對(duì)HarmonyOS 2.0系統(tǒng)的更多詳細(xì)報(bào)道,包括九月份華為在HDC 2020開(kāi)發(fā)者大會(huì)上發(fā)布的HarmonyOS 2.0系統(tǒng)究竟是個(gè)什么樣的系統(tǒng),這將更有助于各位理解覆蓋“全場(chǎng)景”,以及“分布式技術(shù)”究竟是怎么回事。文章鏈接附在本文文末。
本文篇幅較長(zhǎng),共分成4部分:
- 回顧分布式技術(shù)是什么?對(duì)開(kāi)發(fā)者有什么價(jià)值?
- HarmonyOS 2.0手機(jī)開(kāi)發(fā)者Beta版,有哪些變化?
- 再談分布式軟總線(xiàn)。
- HarmonyOS生態(tài)構(gòu)建成績(jī)?nèi)绾危块_(kāi)發(fā)者大賽正在進(jìn)行。
讀者可選擇自己感興趣的部分閱讀。
分布式技術(shù),對(duì)開(kāi)發(fā)者有何價(jià)值
這里再略花點(diǎn)筆墨做些前情提要,畢竟長(zhǎng)期的手機(jī)操作系統(tǒng)式思維,在iOS和Android統(tǒng)領(lǐng)市場(chǎng)這么多年,還是需要市場(chǎng)的反復(fù)教育,才能夠讓一般人轉(zhuǎn)變思維的。

在活動(dòng)下午場(chǎng)的技術(shù)分享上,華為消費(fèi)者業(yè)務(wù)OS平臺(tái)首席架構(gòu)師[w(1] 分享了來(lái)自IoT-Analytics的一組數(shù)據(jù),到2020年每個(gè)人持有的IoT設(shè)備數(shù)量(包括手機(jī)、PC、平板以及其他IoT設(shè)備)大約是6.57部。這個(gè)數(shù)字預(yù)計(jì)到2025年會(huì)推升至9.27部。
但事實(shí)上,直到目前為止,每個(gè)人手頭的這些設(shè)備其實(shí)都無(wú)法做到真正的有效協(xié)同——它們絕大部分是孤立工作的。而HarmonyOS本質(zhì)上就是將這些原本孤立的設(shè)備,通過(guò)“分布式軟總線(xiàn)”串聯(lián)起來(lái),并藉由“分布式數(shù)據(jù)管理”“分布式任務(wù)調(diào)度”等能力,將所有IoT設(shè)備抽象成一個(gè)整體。
數(shù)據(jù)在這個(gè)整體的硬件上自由流轉(zhuǎn)——用戶(hù)不需要在意某個(gè)文件,究竟是在手機(jī)上、PC上、大屏電視上,還是哪個(gè)硬件上;各種任務(wù)負(fù)載,在各種設(shè)備抽象的“超級(jí)終端”上,由最適合的物理硬件去完成,甚至協(xié)同完成。前述架構(gòu)師總結(jié)HarmonyOS是“重新定位人-設(shè)備-場(chǎng)景的關(guān)系”。

其一是“新硬件”,即將原本孤立的終端打造為一個(gè)超級(jí)終端,“通過(guò)軟件定義了新的硬件形式,硬件設(shè)備物理上存在的形態(tài)不重要了。”對(duì)于上層應(yīng)用而言,所有設(shè)備都是抽象、單一的硬件。當(dāng)以手機(jī)為中心時(shí),智能攝像頭可以是手機(jī)的攝像頭,4K電視成為手機(jī)的虛擬屏幕,車(chē)載GPS也成為手機(jī)的定位能力,運(yùn)動(dòng)手表則成為手機(jī)的外置生物特征傳感器。
其二是“新交互”,基于所有設(shè)備的連接,開(kāi)發(fā)的業(yè)務(wù)“展現(xiàn)出新的交互模式”,“人可以選擇最方便的交互模式,用最人性化的交互模式來(lái)交互。改變既有硬件不同特點(diǎn)的交互模式,最終構(gòu)成復(fù)合型交互模式。”比如說(shuō)手機(jī)上接收到一份工作文檔,由于鍵盤(pán)、鼠標(biāo)才是編輯文檔最高效的交互方式;又由于分布式技術(shù)的存在,不需要像傳統(tǒng)系統(tǒng)那樣,把手機(jī)上的文檔傳輸給PC,就能直接在PC上用鍵盤(pán)和鼠標(biāo)直接編輯文檔,也不需要回傳至手機(jī),手機(jī)就能打開(kāi)或發(fā)出該文檔。
其三“新服務(wù)”,一個(gè)服務(wù)存在于多個(gè)終端上,既可以在一個(gè)終端上,也可以是多個(gè)終端的場(chǎng)景組合,構(gòu)成更好的用戶(hù)體驗(yàn)。比如京東購(gòu)物可以同時(shí)在手機(jī)、冰箱、大屏電視上進(jìn)行,手機(jī)冰箱碰一碰就完成按需的流轉(zhuǎn);再比如手機(jī)、大屏電視同時(shí)運(yùn)行視頻app,電視負(fù)責(zé)播放節(jié)目,而手機(jī)則用于顯示額外信息,例如可查詢(xún)目前正播放電視劇中某個(gè)演員的資料,甚至綜藝節(jié)目中,在電視上單獨(dú)呈現(xiàn)某個(gè)明星專(zhuān)門(mén)的鏡頭。

簡(jiǎn)單地說(shuō),對(duì)用戶(hù)而言,是用一個(gè)鴻蒙操作系統(tǒng),來(lái)解決IoT的所有問(wèn)題。對(duì)應(yīng)用開(kāi)發(fā)者而言,這些改變又意味著什么呢?
首先,在技術(shù)上,用華為消費(fèi)者業(yè)務(wù)軟件部總裁王成錄博士的話(huà)來(lái)說(shuō),“寫(xiě)一次代碼,應(yīng)用就能運(yùn)行在所有設(shè)備上,生態(tài)在所有設(shè)備上共享。”如此一來(lái),開(kāi)發(fā)者就能占領(lǐng)更多的硬件設(shè)備入口。前文提到京東的例子,就讓京東app“從手機(jī)單一平臺(tái)解放出來(lái),應(yīng)用入口擴(kuò)展到更多帶屏設(shè)備,甚至是音箱設(shè)備,這些設(shè)備都成為京東的潛在入口”;“讓上億家居設(shè)備成為京東購(gòu)物的入口”。
其次,從用戶(hù)體驗(yàn)的角度來(lái)說(shuō),開(kāi)發(fā)的應(yīng)用可脫離單設(shè)備的限制,硬件資源可組合利用,又能分別運(yùn)行,應(yīng)用體驗(yàn)得到提升。“喜馬拉雅在車(chē)機(jī)上,以及所有有揚(yáng)聲器和麥克風(fēng)的設(shè)備上運(yùn)行,”不僅有更多入口,而且也有更合適、方便的入口促成app使用體驗(yàn)的提升。”

王成錄博士援引了一組數(shù)據(jù),從2018年開(kāi)始,手機(jī)出貨量、移動(dòng)App數(shù)量,以及消費(fèi)者在手機(jī)上消耗的時(shí)間就不怎么增長(zhǎng)了。“手機(jī)生態(tài)來(lái)到一個(gè)臨界點(diǎn),”“沒(méi)有持續(xù)的增長(zhǎng),產(chǎn)業(yè)就會(huì)進(jìn)入到下滑階段。”IoT顯然能抑制這種下滑,而HarmonyOS則讓?xiě)?yīng)用,從單一的手機(jī)上,擴(kuò)展到更多的IoT設(shè)備上。所以用大白話(huà)來(lái)說(shuō)HarmonyOS為開(kāi)發(fā)者帶來(lái)了什么:
1.更多機(jī)會(huì),更賺錢(qián);2.開(kāi)發(fā)過(guò)程更簡(jiǎn)單。
“華為在和南向硬件廠(chǎng)商合作,更多的硬件廠(chǎng)家加入到鴻蒙生態(tài)體系中來(lái),你的應(yīng)用有機(jī)會(huì)運(yùn)行在這些設(shè)備上,占領(lǐng)更多的入口,成為大家努力創(chuàng)新的更好的突破口和出發(fā)點(diǎn)。”這其實(shí)也是HarmonyOS生態(tài)能否吸引開(kāi)發(fā)者的一部分。
手機(jī)開(kāi)發(fā)者Beta版,為開(kāi)發(fā)者帶來(lái)了什么
此前我們發(fā)布有關(guān)鴻蒙系統(tǒng)的文章,大多還是在講概念。未來(lái)我們會(huì)有更多的機(jī)會(huì)去深入到HarmonyOS系統(tǒng)內(nèi)部,從開(kāi)發(fā)者,以及系統(tǒng)底層的角度來(lái)探討HarmonyOS系統(tǒng)本身。這次,我們嘗試從北向開(kāi)發(fā)者的角度來(lái)談?wù)?,HarmonyOS 2.0手機(jī)應(yīng)用Beta版本究竟能帶來(lái)些什么。

從大方向來(lái)看,系統(tǒng)服務(wù)層面抽象封裝了包括分布式軟總線(xiàn)、分布式數(shù)據(jù)管理等在內(nèi)的各種具體實(shí)現(xiàn)。這些對(duì)于開(kāi)發(fā)者而言都是隱藏的。開(kāi)發(fā)者因此只需要關(guān)注業(yè)務(wù)邏輯即可,很多復(fù)雜的分布式技術(shù),是交由下層框架去解決的。
面向開(kāi)發(fā)者的是分布式框架。這次發(fā)布的兩個(gè)重點(diǎn)是分布式應(yīng)用框架,與分布式UI框架。此外DevEco IDE也有了更新。
(1)分布式應(yīng)用框架
這些框架令開(kāi)發(fā)者不需要為不同的設(shè)備,做app的重復(fù)開(kāi)發(fā),是實(shí)現(xiàn)一次開(kāi)發(fā)多端部署的基礎(chǔ)。
這里HarmonyOS引入了一個(gè)“元能力”(Ability)的概念,元能力是“實(shí)現(xiàn)應(yīng)用跨端部署的基礎(chǔ)單元”,應(yīng)用由元能力“靈活組裝,可大可小,可分可合,可流轉(zhuǎn)”。用王成錄博士的話(huà)來(lái)說(shuō),“元能力相當(dāng)于鴻蒙應(yīng)用里建筑材料的最小單元,可以單獨(dú)運(yùn)行在小設(shè)備上,又可以根據(jù)能力的不同,不同的FA(Feature Ability)在不同的設(shè)備上運(yùn)行。”“這個(gè)能力,是我們能夠做到一次業(yè)務(wù)代碼的書(shū)寫(xiě),就讓?xiě)?yīng)用跑在不同設(shè)備上的重要基礎(chǔ)。”
從華為開(kāi)發(fā)者文檔來(lái)看,這里的“Ability”是HarmonyOS引入的一種應(yīng)用可提供功能的抽象,Ability類(lèi)是HarmonyOS應(yīng)用的基礎(chǔ)組件,是不同設(shè)備間系統(tǒng)最小遷移單元,Ability可彼此間聯(lián)合或者單獨(dú)部署。

華為將其稱(chēng)作程序的“原子化”。前述架構(gòu)師也提到FA(Feature Ability,元程序,有UI界面)和PA(Particle Ability,元服務(wù),無(wú)UI界面)是超級(jí)終端的基礎(chǔ)應(yīng)用結(jié)構(gòu)——超級(jí)終端前文已經(jīng)提過(guò)了,這是個(gè)抽象多設(shè)備后的整體。不同的FA和PA,完成單一功能用戶(hù)程序,基于這樣的用戶(hù)程序可在多設(shè)備間調(diào)度、流轉(zhuǎn)、可分可合。這兩種類(lèi)型的Ability,為開(kāi)發(fā)者提供不同的模板,實(shí)現(xiàn)不同的業(yè)務(wù)功能。
FA、PA由系統(tǒng)統(tǒng)一調(diào)度,并可被其他第三方程序調(diào)用集成。FA/PA這種元能力的存在,對(duì)于HarmonyOS和開(kāi)發(fā)者而言,實(shí)現(xiàn)了接口功能的規(guī)范化,“調(diào)用能力傻瓜化”。FA/PA的關(guān)鍵特征,前述架構(gòu)師列出的是“支持不同設(shè)備的Profile,不常駐;業(yè)務(wù)邏輯與數(shù)據(jù)、顯示兩兩分離;支持可重入和遠(yuǎn)端執(zhí)行”。

上面這張圖對(duì)比了,若要實(shí)現(xiàn)app在不同設(shè)備上的互通,傳統(tǒng)Android開(kāi)發(fā)需要從底層到上層的各部分適配,各層都需要做修改。而HarmonyOS將UI往下的基礎(chǔ)服務(wù)做了全部的封裝,這對(duì)開(kāi)發(fā)者而言就輕松了很多。

王成錄博士舉了京東開(kāi)發(fā)直播購(gòu)物跨端功能的例子,即手機(jī)上的京東轉(zhuǎn)到電視大屏,手機(jī)可以用來(lái)執(zhí)行其他操作——這在活動(dòng)現(xiàn)場(chǎng)也有專(zhuān)門(mén)的演示。據(jù)說(shuō)開(kāi)發(fā)這樣一個(gè)特性,只需要一天時(shí)間。“基于編程框架,一個(gè)人一天就能做這樣一個(gè)很好的應(yīng)用體驗(yàn)。”王成錄表示,“對(duì)開(kāi)發(fā)者而言,四條語(yǔ)句,調(diào)幾個(gè)函數(shù),就能完成這樣的功能了。”
(2)分布式UI框架
分布式UI框架,是用于解決在應(yīng)用開(kāi)發(fā)過(guò)程中,針對(duì)不同形狀、尺寸、分辨率屏幕顯示,以及交互適配困難的問(wèn)題的。很多應(yīng)用開(kāi)發(fā),UI的工作量經(jīng)常占到一半以上。不同顯示尺寸的適配問(wèn)題要占用開(kāi)發(fā)者大量的時(shí)間和經(jīng)歷。這次的Beta版,面向開(kāi)發(fā)者提供了分布式UI框架,“各種自適應(yīng),封裝成一個(gè)個(gè)可調(diào)用的模塊,適配不同尺寸、分辨率的屏幕。”
從針對(duì)分布式應(yīng)用開(kāi)發(fā)的實(shí)例演示來(lái)看,這一版系統(tǒng)提供了7類(lèi)自適應(yīng)布局能力:包括拉伸、縮放、隱藏、拆行、均分、占比、延伸等。“所有界面元素都做了架構(gòu)上的解耦,解耦到最小粒度,這樣就能根據(jù)硬件尺寸來(lái)做調(diào)整。”

除了顯示以外,在交互方面,新版系統(tǒng)引入了一種“歸一設(shè)計(jì)”。隱藏不同輸入方式的差異,組件針對(duì)不同輸入進(jìn)行差異化反饋,一致化交互事件接口。比如針對(duì)一張圖片,觸摸屏是雙指捏合實(shí)現(xiàn)縮放,PC則通過(guò)Ctrl+鼠標(biāo)滾輪,還有觸控板雙指捏合,手表上則可能是通過(guò)表冠旋轉(zhuǎn)。所以HarmonyOS現(xiàn)在做了“交互事件歸一”,開(kāi)發(fā)者只需要關(guān)注交互本身。
分布式UI框架實(shí)現(xiàn)的,一句話(huà)也就是“一次開(kāi)發(fā),適配不同顯示介面”,以及節(jié)省UI開(kāi)發(fā)的時(shí)間。
(3)DevEco Studio 2.0 Beta3
DevEco Studio是華為官方所推的IDE。這次IDE的更新主要有四點(diǎn)。第一是提供了9套“手機(jī)應(yīng)用模板”,比如新聞、購(gòu)物類(lèi)app,開(kāi)發(fā)者可以直接套用,部分減少了app開(kāi)發(fā)工作量。
第二,IDE中加入了多端界面預(yù)覽、實(shí)時(shí)反饋。這次似乎主要是多加了對(duì)手機(jī)界面的預(yù)覽。實(shí)現(xiàn)效果如下圖。

第三,分布式調(diào)試。這一點(diǎn)是很值得一提的。因?yàn)楫?dāng)開(kāi)發(fā)是跨終端的,而且開(kāi)發(fā)過(guò)程對(duì)開(kāi)發(fā)者還隱藏了大量實(shí)現(xiàn)細(xì)節(jié),做了高層次的抽象,那么IDE中調(diào)試功能的開(kāi)發(fā)會(huì)成為難點(diǎn)——或者說(shuō)調(diào)試本身也需要做到高層調(diào)試。這一點(diǎn)相信華為在其中也投入了大量工作,這次更新中提到的是“一個(gè)斷點(diǎn),調(diào)跨端代碼”,即調(diào)試過(guò)程只需要在一個(gè)設(shè)備上打斷點(diǎn)。
即便該設(shè)備同時(shí)連多設(shè)備,在所謂的“分布式”概念下,令其處于調(diào)試狀態(tài)下,則相當(dāng)于一個(gè)設(shè)備的一個(gè)進(jìn)程要“穿越”到另外一個(gè)設(shè)備的另一個(gè)進(jìn)程中。即便是這樣,“一個(gè)斷點(diǎn)就夠了”。[w(2]
第四,模擬仿真無(wú)限接近真機(jī)。就是在不需要真機(jī)的情況下,在云端進(jìn)行模擬,并實(shí)時(shí)看到開(kāi)發(fā)應(yīng)用模擬運(yùn)行的效果。華為部署的云模擬器是基于ARM架構(gòu)服務(wù)器的,“逼近真機(jī)”。這項(xiàng)特性在此前DevEco Studio的介紹中就看到過(guò),這次可能是做了進(jìn)一步的完善。
包括“支持20+種器件及傳感器逼真模擬:連續(xù)導(dǎo)航,連續(xù)計(jì)步,以及移動(dòng)網(wǎng)絡(luò)(接收短信/來(lái)電)等場(chǎng)景”。

再談?wù)劮植际杰浛偩€(xiàn)
以上這些就是相較今年9月HarmonyOS 2.0剛剛問(wèn)世時(shí),其手機(jī)開(kāi)發(fā)者Beta版的一些主要改進(jìn)項(xiàng)目了。從這些面向開(kāi)發(fā)者的改進(jìn),實(shí)則就不難發(fā)現(xiàn)HarmonyOS處在功能完善階段:尤其是據(jù)更早提出這個(gè)系統(tǒng)的目標(biāo),包括分布式技術(shù)這個(gè)看起來(lái)需要相當(dāng)投入的目標(biāo)——尤其為了上層應(yīng)用開(kāi)發(fā)的便利,還要對(duì)眾多開(kāi)發(fā)者隱藏分布式技術(shù)的實(shí)現(xiàn)細(xì)節(jié)。
針對(duì)這一點(diǎn),我們嘗試再來(lái)簡(jiǎn)單看看分布式軟總線(xiàn)這項(xiàng)技術(shù)。華為2012實(shí)驗(yàn)室計(jì)算機(jī)網(wǎng)絡(luò)與協(xié)議實(shí)驗(yàn)室主任提到[w(3] ,之所以稱(chēng)其為“軟總線(xiàn)”,是因?yàn)?ldquo;計(jì)算機(jī)里頭,總線(xiàn)操作對(duì)軟件是不可見(jiàn)的。我們希望HarmonyOS的通信能力對(duì)應(yīng)用而言,就像總線(xiàn)一樣,不需要開(kāi)發(fā)者去關(guān)心物理通道實(shí)現(xiàn)”。
分布式軟總線(xiàn)的概念,此前我已經(jīng)在好幾篇文章中提過(guò)了,它是分布式技術(shù)的基礎(chǔ)之一。即“超級(jí)終端”的形成,是需要這根“線(xiàn)”把所有物理設(shè)備串聯(lián)起來(lái),才能實(shí)現(xiàn)分布式數(shù)據(jù)管理、分布式任務(wù)調(diào)度的。此前我們知道了,分布式軟總線(xiàn)具備“自發(fā)現(xiàn)、自連接”“高帶寬”“低時(shí)延”“高可靠”以及“融合組網(wǎng)”等特點(diǎn)。

對(duì)于分布式軟總線(xiàn)本身的實(shí)現(xiàn),我們還是知之甚少的。分布式軟總線(xiàn)在實(shí)現(xiàn)上,至少需要解決網(wǎng)絡(luò)技術(shù)基礎(chǔ)問(wèn)題、配置與安全認(rèn)證問(wèn)題、性能調(diào)優(yōu)問(wèn)題等。這次鄭凱提到了分布式軟總線(xiàn)的“極簡(jiǎn)通信協(xié)議”技術(shù),將OSI網(wǎng)絡(luò)模型中的3-7層(網(wǎng)絡(luò)層、傳輸層、會(huì)話(huà)層、表示層、應(yīng)用層)精簡(jiǎn)為一層,就叫“近場(chǎng)極簡(jiǎn)通信協(xié)議棧”。
“因?yàn)镺SI是針對(duì)廣域網(wǎng),東西很全,但我們要實(shí)現(xiàn)業(yè)務(wù)直達(dá),做精簡(jiǎn)抽象”…“多層協(xié)議流程打通,剪除很多不必要的環(huán)節(jié)”,以及“避免層間調(diào)用和工程開(kāi)銷(xiāo)”。鄭凱說(shuō)。
另外還要做到“多元化協(xié)議與算法,智能感知和決策”——“我們需要讓協(xié)議、軟總線(xiàn),因時(shí)因地在繁復(fù)龐大的知識(shí)庫(kù)里,找到最優(yōu)路徑,這就要求協(xié)議棧模塊化,成為智能感知、智能決策、具體執(zhí)行這樣一個(gè)完整的系統(tǒng)。”不知道到目前為止,華為是否已經(jīng)在HarmonyOS上實(shí)現(xiàn)了以上這個(gè)大工程。
除了傳輸,華為還需要解決這條“軟總線(xiàn)”在網(wǎng)絡(luò)發(fā)現(xiàn)、連接,以及組網(wǎng)方面的問(wèn)題。比如發(fā)現(xiàn)與連接,HarmonyOS期望做到“智能自發(fā)現(xiàn)”的“多通路并發(fā)優(yōu)選”;認(rèn)證階段,則采用華為賬號(hào)一站式認(rèn)證,非首次連接則做了認(rèn)證過(guò)程的簡(jiǎn)化;連接過(guò)程,則有“多路連接通道按需連接”這樣的設(shè)定。
而在組網(wǎng)相關(guān)的部分——因?yàn)?ldquo;分布式軟總線(xiàn)”宣傳的一個(gè)重點(diǎn),就是藍(lán)牙、WiFi的“異構(gòu)融合組網(wǎng)”。雖然實(shí)現(xiàn)細(xì)節(jié)仍然很不清楚,不過(guò)鄭凱這次大致提到了“多協(xié)議IP化、動(dòng)態(tài)轉(zhuǎn)換,組件異構(gòu)融合自組網(wǎng)”;“自協(xié)商:網(wǎng)絡(luò)自構(gòu)建,協(xié)議自協(xié)商”;“廣覆蓋:多協(xié)議組網(wǎng),聯(lián)通資源孤島”;“共標(biāo)準(zhǔn):統(tǒng)一互通標(biāo)準(zhǔn),促進(jìn)生態(tài)融合”;“強(qiáng)互補(bǔ):多協(xié)議、多介質(zhì)物理特性互補(bǔ)”。以及涉及整個(gè)已組建網(wǎng)絡(luò)的“多跳自組網(wǎng)”,要做到快速收斂一張“無(wú)環(huán)網(wǎng)”,并且還有設(shè)計(jì)冗余鏈路、多路徑傳輸。
其實(shí)開(kāi)發(fā)者不需要關(guān)注這些實(shí)現(xiàn)細(xì)節(jié)和過(guò)程。在開(kāi)發(fā)demo中,很容易了解到網(wǎng)絡(luò)的發(fā)現(xiàn)過(guò)程,是由軟總線(xiàn)自動(dòng)完成;組網(wǎng)過(guò)程,開(kāi)發(fā)者也不需要關(guān)心組網(wǎng)協(xié)議,軟總線(xiàn)跨物理介質(zhì)互通;軟總線(xiàn)還隱藏了復(fù)雜文件傳輸實(shí)現(xiàn),開(kāi)發(fā)者不需要關(guān)注I/O、協(xié)議、平臺(tái)遷移、性能基線(xiàn)等。

上面這張圖是手機(jī)與大屏傳文件的第三步,傳輸過(guò)程。開(kāi)發(fā)者調(diào)用文件傳輸接口,發(fā)送文件,定義文件meta信息的一行代碼,軟總線(xiàn)底層隱藏邏輯包含的內(nèi)容也可從圖中一目了然。
就華為這一側(cè)來(lái)看,僅是分布式軟總線(xiàn)上述的這些設(shè)計(jì)目標(biāo),似乎就涉及到極為龐大的工程量。這可能與華為此前在網(wǎng)絡(luò)通訊技術(shù)上的積累有很大的關(guān)系。
分布式軟總線(xiàn)的這個(gè)例子其實(shí)很能反映HarmonyOS最終目標(biāo)的工程量有多浩大。如果從更高層級(jí)來(lái)看這套系統(tǒng),這里還可以再舉個(gè)例子。HarmonyOS采用多內(nèi)核設(shè)計(jì),針對(duì)不同設(shè)備、應(yīng)用場(chǎng)景,可以選擇不同的系統(tǒng)內(nèi)核。這其實(shí)也是HarmonyOS可覆蓋下至幾百KB RAM,上至GB級(jí)別RAM設(shè)備的重要原因。

上面這張圖可見(jiàn),內(nèi)核層可選Linux Kernel,或者是LiteOS——LiteOS是一個(gè)輕量化的更適用于小型IoT設(shè)備的內(nèi)核,而且它還支持MMU,內(nèi)核/app空間隔離,以及支持POSIX接口,所以許多開(kāi)源軟件可以在LiteOS上直接使用。為了實(shí)現(xiàn)多內(nèi)核的設(shè)計(jì),其上需要有一個(gè)KAL抽象層,隱藏內(nèi)核實(shí)施細(xì)節(jié),面向上層提供基礎(chǔ)內(nèi)核能力,包括進(jìn)程、線(xiàn)程管理,內(nèi)存管理,文件系統(tǒng),網(wǎng)絡(luò)管理等。
這也是HarmonyOS真正做到“全場(chǎng)景”覆蓋的最底層基礎(chǔ)。不過(guò)其實(shí)現(xiàn)難度似乎也相當(dāng)之大。這些都只是HarmonyOS的組成部分,這張圖上其實(shí)也能看到上層的各種分布式能力。
其實(shí)在活動(dòng)下午場(chǎng)HarmonyOS 2.0架構(gòu)、關(guān)鍵技術(shù)解讀中,還涉及HarmonyOS應(yīng)用程序框架、應(yīng)用開(kāi)發(fā)平臺(tái),以及的更多講解。鑒于篇幅的關(guān)系,這里就不再展開(kāi)了。但總體可總結(jié)的是,和分布式軟總線(xiàn)的那些關(guān)鍵技術(shù)一樣,為開(kāi)發(fā)者提供的便利,也就意味著是華為需要海量投入去完成的——這個(gè)過(guò)程恐怕不是短時(shí)間內(nèi)可達(dá)到的。
生態(tài)構(gòu)建3個(gè)月的成果,和開(kāi)發(fā)者大賽
實(shí)際上9月份HDC2020華為開(kāi)發(fā)者大會(huì)上,HarmonyOS 2.0問(wèn)世至今也不過(guò)區(qū)區(qū)3個(gè)月時(shí)間,似乎華為對(duì)生態(tài)構(gòu)建的成績(jī)匯報(bào)是以月為單位的,這也表明華為在HarmonyOS生態(tài)構(gòu)建上還是有信心。以下是楊海松在采訪(fǎng)中提供的一些數(shù)字和信息:
- HDC發(fā)布會(huì)后,鴻蒙成為中國(guó)最熱的開(kāi)源項(xiàng)目,沒(méi)有之一;我們聚集了10萬(wàn)以上的開(kāi)發(fā)者人才生態(tài)圈——而且是真正有效的開(kāi)發(fā)者,包括下載鴻蒙源代碼、下載過(guò)IDE工具、提交過(guò)代碼、參與過(guò)鴻蒙課程的。
- HDC大會(huì)上,有5家合作伙伴與我們簽約,目前已經(jīng)有10家。到年底,我們預(yù)計(jì)會(huì)有20+的SKU的HarmonyOS硬件上市;明年相信這個(gè)數(shù)字會(huì)翻幾番。
- 明年的目標(biāo)是1億臺(tái)生態(tài)設(shè)備會(huì)搭載HarmonyOS系統(tǒng)。
- 硬件合作伙伴方面的進(jìn)展。中國(guó)所有頭部智能家電企業(yè)都在和我們談,有些已經(jīng)簽約,有些正在簽約。
- 應(yīng)用開(kāi)發(fā)者,我們現(xiàn)在有120+的應(yīng)用合作伙伴,已經(jīng)和我們簽訂了整個(gè)HarmonyOS集成開(kāi)發(fā)的協(xié)議,同時(shí)和我們一起做HarmonyOS的創(chuàng)新。
- 產(chǎn)業(yè)鏈構(gòu)建,無(wú)論硬件、軟件還是人才產(chǎn)業(yè)鏈,共建者給我們的反饋也超出預(yù)期。已經(jīng)有5款以上芯片、9個(gè)模組、3-4家軟硬件集成解決方案合作伙伴簽約。預(yù)計(jì)明年軟硬件集成合作伙伴出貨量會(huì)過(guò)千萬(wàn)。

“生態(tài)建立最艱難的過(guò)程,就是從零到一的過(guò)程,最難的時(shí)刻就是現(xiàn)在。”楊海松說(shuō)。其實(shí)上面這些成績(jī)看起來(lái)還是相當(dāng)不錯(cuò),即便目標(biāo)的完成大概也會(huì)很有壓力。作為生態(tài)構(gòu)建的一環(huán),華為也開(kāi)啟了HarmonyOS開(kāi)發(fā)者創(chuàng)新大賽,昨天應(yīng)該就已經(jīng)正式上線(xiàn)了,到明年5月15日截止,提供150萬(wàn)元獎(jiǎng)金,另會(huì)有20名導(dǎo)師負(fù)責(zé)指導(dǎo)。
最后值得一提的是,楊海松在采訪(fǎng)中提到,這次活動(dòng)是面向開(kāi)發(fā)者的;而面向手機(jī)消費(fèi)用戶(hù)時(shí),有一些相關(guān)HarmonyOS生態(tài)的重磅信息尚無(wú)法公開(kāi)。所以未來(lái)2C的發(fā)布會(huì)上,我們預(yù)計(jì)還會(huì)看到一波更有趣的內(nèi)容更新,那就是更貼近消費(fèi)用戶(hù)的系統(tǒng)特性了。
推薦閱讀:
鴻蒙2.0具體有哪些改進(jìn)?明年華為手機(jī)都能用上
第三大生態(tài)的建立:華為憑什么吸引開(kāi)發(fā)者加入HMS生態(tài)?
現(xiàn)場(chǎng)更多HarmonyOS應(yīng)用演示圖集:






責(zé)編:Yvonne Geng