OpenHarmony 2.0 于 2021 年 6 月 2 號開源,第一時間下載了代碼,做了一些分析。HarmonyOS 2 發布,看了直播后,感覺很激動。
這里分享一些感受,主要是匯總了 OpenHarmony 2.0 和 HarmonyOS 發布會一些我比較感興趣的東西。
OpenHarmony 2.0 的初步情況
此次開源的版本就叫 OpenHarmony 2.0。以后也不再區分 L2、L3、L4 這樣的。該版本可在所有大小設備上使用。
此次開源沒有 Java 程序的支持,也就是不支持 Android。沒有 Android 的東西,也不支持 Java 應用。
第一時間對代碼量進行了統計。我算的比較粗,用的統計軟件也是我十年前寫《深入理解 Android》幾本書時用的了。
不含 kernel、third_party(包括 device/hisilicon/third_party 也挪出去),所有我認識的源碼文件共包含有效代碼行數 1912976,接近 200w 行。
而歸屬 third_party+device/hisilicon/third_party 的代碼行數為 7607742(不考慮 Html/html)。
所以,1912976/9520718=20%。鴻蒙自己開發的代碼占全部源代碼的 20%。不要小看這個,按之前的網上說法,AOSP 里谷歌寫的代碼才占了 15%。
當然,以上代碼總量沒計算 Linux Kernel,那玩意光自己就有近 1300 多萬行代碼。
Codelab 里的分布式場景介紹
華為開發者官網里開源了二十多個 Demo,我們第一時間整理了其中和分布式有關的 Demo 如下:
所有 Demo 入口地址在:
https://developer.huawei.com/consumer/cn/codelabsPortal/index
以上總結可供老板,做決策的領導,想方案的產品經理看。
HarmonyOS 2.0發布會中一些有意思的信息
接下來說 HarmonyOS 2.0 發布會。頭天晚上看完后,第二天又看了回看,把一些細節給摸清楚了。
①超級終端,分布式等
全棧解耦:一套代碼,滿足各種硬件要求。這一條在這部分提得很少,后面講鴻蒙桌面的時候提得多。
設備互聯:基于軟總線技術。場景有:多機位模式:一個手機可以看多個攝像頭。
協同辦公:手機,平板,PC 協同。
統一控制中心:所有設備的控制,狀態顯示都集中在手機上,就好像它們是一臺設備一樣。
做了一個統一的 UI/UE 入口——卡片:方便用戶使用。其使用場景有“可以選擇音樂輸出到任何連接上的耳機,音箱“。
多設備構成超級終端:用戶操作體驗增強:卡片里展示超級終端,可被連接的設備懸浮顯示。拖拽即可完成手機與其他設備的連接。
另外,幾個設備協同是有排斥關系的。如下面右圖。藍色是室外音箱,對角的是室內音箱。當室內音箱被協同后,室外音箱會被排除出去。
這一點只是想說明,華為考慮得比較周到,它把設備協同中出現的設備之間沖突情況也考慮進來。另外,手表,pad,手機都可以運行這個控制中心。
多設備協同的一個有意思的場景是”手機播放音樂,音箱和手機協同后,聲音從音箱出。“
還有一個場景是看視頻:手機和電視機協同后,手機的視頻轉到電視播放。手機和耳機協同后,電視機聲音從耳機播放。這里應該還是有場景的判斷。手機是控制,電視機是播放源。
雖然是在手機上對耳機進行了協同,但實際上是把讓電視機的聲音轉到耳機去輸出。(至少效果是這樣,技術實現不清楚是通過手機中轉的音頻數據還是耳機和電視進行了藍牙配對以及傳輸)
這里,王博士提到了兩個關鍵技術,值得重視:
應用場景為多設備間的音畫同步軟時鐘同步
無線傳輸時的抗干擾算法
接著,介紹了一個手機和 PAD,以及手機和 PC 的協同,馬上看一下:
手機和 pad 協同:pad 和手機協同后,pad 可方便訪問手機上的照片。手機和 PC 協同:手機變成 PC 上的一個盤符。PC 需要安裝一個插件。類似 MTP 那樣的,只不過改成無線傳輸了。
Harmony Connect:暢聯。多設備間的通話,語音,視頻。
智能家電:碰一碰配網,碰一碰展示設備的智能功能。
②鴻蒙桌面
解決一次開發多端部署的問題。現在看解決辦法和快應用比較像,呈現形式為卡片,不需要安裝。
意思是不需要用戶去應用市場下載和安裝,是不是類似微信小程序,快應用?技術上不是特別確定,但感覺小程序,卡片這種模式越來越流行了。
鴻蒙桌面這里提到了兩個關鍵技術:
分布式編程框架:就是原來提到的分布式軟總線,分布式任務調度,分布式數據管理等。
原子化服務:不好描述是什么。但展現形式是卡片。
有一個應用場景是跨設備流轉:手機和 pad 搭配成超級終端后,手機能看到 pad 上的任務。
手機上的任務能拖到 pad 上去執行。示例是把 wps 從手機拖到 pad。pad 上啟動并展示了 wps。其展示內容和之前在手機上編輯的一樣。
初步技術判斷:需要 app 支持,就是把手機上該 app 的執行的信息。先同步到大屏上對應的 app 里。期待更多應用適配鴻蒙!
其他一些嚇人的技術
這里就不截圖了,比如全棧優化、動態空間管理, 全新自研圖形棧,多設備協同驗證。
這些都是很有價值的關鍵點。值得大家關注。以后代碼要是開源,我們再第一時間分析。
對鴻蒙OS 的理解
首先,OpenHarmony 是不含 Android,所以,大家不必糾結 OpenHarmony 是不是 Android 套殼,現在連 Java 都跑不起來。
不過,我覺得是個機會,讀了《深入理解 Android Java 虛擬機 ART》一書的幾千個朋友里,哪怕有 10 個人能在 ART 基礎上改一改,OpenHarmony 跑 Java 程序不是什么難題。
而 HarmonyOS 是看做 OpenHarmony 的廠商定制版。為了消費者考慮,現階段兼容 Android 是一種務實的選擇。隨著 OpenHarmony 的生態完善,逐步替代 Android 也不是不可能。
另外,正如我上篇文章《三分天下有其一,鴻蒙 OS 全面介紹》所說,鴻蒙的目標是星辰大海。
不要老盯著現在這些所謂的“問題”,從戰略高度看,即使鬼子不逼我們,我們也得走這一條路。華為在服務端有 openEuler,終端有鴻蒙,對大家來說不是件好事嗎?
責任編輯:haq
-
華為
+關注
關注
216文章
34429瀏覽量
251641 -
鴻蒙系統
+關注
關注
183文章
2634瀏覽量
66320 -
HarmonyOS
+關注
關注
79文章
1974瀏覽量
30166 -
OpenHarmony
+關注
關注
25文章
3718瀏覽量
16296
原文標題:分析了200w行開源鴻蒙源碼后,我發現...
文章出處:【微信號:gh_834c4b3d87fe,微信公眾號:OpenHarmony技術社區】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論