2017年,華為手機靠著1.53億臺的銷量和20.4%的市場占有率,穩坐中國手機市場老大的位置。
當大家都在慶祝這個里程碑時刻時,2018年初,華為消費者業務軟件部門的負責人王成錄卻向任正非傳遞了一個危險的信號:華為并不具備與巨大的手機業務規模相匹配的“根基”,華為需要自己的操作系統。
任正非隨即拍板決定,一直在籌謀的“操作系統項目”從軟件部內部項目,升格為公司項目。
兩年之后的2019年8月9日,余承東迎來50歲生日,這距離美國首次制裁華為已經過去4個月。當天,華為在開發者大會上揭開了鴻蒙系統的面紗。余承東生日蛋糕的照片和鴻蒙的名字,傳遍了社交網站。
鴻蒙在華為的高光時刻誕生,在華為陷入危機時走到臺前。
鴻蒙作為華為自研OS,一直以來備受爭議,但不管是早期的“活在PPT里的系統”,還是之后的“安卓套殼”,公眾對鴻蒙有期待,也有質疑。
在華為手機業務全球收縮的背景下,鴻蒙即將在蹣跚學步時期,迎來一次巨大危機。
鴻蒙2.0 460萬行代碼陸續開源
隨著近期鴻蒙系統逐漸推送至普通用戶的手機中,關于鴻蒙的爭論愈加激烈。很多網友認為鴻蒙是套殼安卓,但礙于代碼未開源難以求證。
日前,據微博@釗哥科普 最新爆料,全新的鴻蒙OpenHarmony 2.0將從5月16日起到6月2日陸續開源。
此前,華為曾在開發者大會上宣布將 HarmonyOS源代碼捐贈給中國開放原子開源基金會,并在大會上公布了鴻蒙系統的開源路線,就是OpenHarmony。
OpenHarmony 官方源碼地址:
https://openharmony.gitee.com/openharmony
根據Gitee上介紹,OpenHarmony在傳統的單設備系統能力的基礎上,創造性地提出了基于同一套系統能力、適配多種終端形態的理念,支持多種終端設備上運行,第一個版本支持128K~128M設備上運行,歡迎參加開源社區一起持續演進。
針對設備開發者,OpenHarmony采用了組件化的設計方案,可以根據設備的資源能力和業務特征進行靈活裁剪,滿足不同形態的終端設備對于操作系統的要求。可運行在百K級別的資源受限設備和穿戴類設備,也可運行在百M級別的智能家用攝像頭/行車記錄儀等相對資源豐富的設備。
上個月,華為放出了OpenHarmony 1.1.0 LTS版本,相比于更早的1.0版本增加了AI子系統、電源管理子系統、泛傳感器子系統、升級子系統、統一AI引擎框架。
根據釗哥科普的介紹,OpenHarmony 2.0約有460萬行關鍵代碼,相比起來Android 10則擁有1525萬行;OpenHarmony 2.0約有18000個API,相比起來Android 10則擁有36000+個。安裝包體積縮小到60-70%,手機、平板、可穿戴設備、電視、傳感器等各種設備都能使用。
根據他的爆料,OpenHarmony 2.0將會有多個分支版本,本次開放L2是純粹的鴻蒙版本,而OpenHarmony L2代碼開源已經開始,幾百萬航代碼陸續走來。純粹的鴻蒙版本沒有任何安卓代碼,可以使用所有鴻蒙的應用,不過在APP上較為匱乏。
還將會有L3-L5版本,是兼容安卓的雙框架,此前看到能跑安卓apk應用的就是它,很快也會開源。“至于這個鴻蒙是不是很多人認為的套殼安卓,代碼里見,對著代碼碰吧,一次噴個痛快”,他這樣激動地說。
而在生態方面,越來越多的單位將加入鴻蒙行列,比如中國信通院、軟通動力、好叭科技、華秋電子、中軟、潤和軟件、九聯科技,等等。
對于為何鴻蒙能兼容安卓應用,終于有了相關介紹。根據釗哥科普爆料的PPT圖片顯示,這是因為OpenHarmony 2.0復用了多個開源組件,適時啟動Foundation進程,然后在該進程內進一步處理。
5月初,鴻蒙OS 2.0開發者版陸續公測,Mate 40等旗艦機已經收到系統推送,后續華為 nova 6、nova 6 5G 、nova 7 5G、nova 7 Pro 5G、nova 8、nova 8 Pro、MatePad 10.8 英寸等機型也會支持。
而OpenHarmony則也一直在革新,OpenHarmony版本路標如下:
對于這個消息,知乎上有人表示質疑,但釗哥認為L2可以上手機,馬上就拿出來了。
是否套殼?官方回應
對于鴻蒙是否是套殼這個問題,華為之前曾經多次公開發聲。華為消費者業務軟件部總裁、鴻蒙操作系統負責人王成錄在接受國內媒體采訪時表示,其實大家質疑鴻蒙是不是Android換個殼,說明中國科技界對軟件開源的理解不夠一致。
他補充稱,并不是所有Android代碼都是Google開發的,絕大部分代碼來自開源社區。鴻蒙也會吸收社區優秀技術和代碼,使用AOSP(Android 開源項目)的開源代碼,就判斷鴻蒙是Android換了皮,說明這類吐槽者沒有太準確理解什么是開源。
他強調,鴻蒙OS的出現,不是為了應對美國制裁而做的替代系統,而是在2016年就立項開發,它是真正面向未來IoT時代的一個全景操作系統。
事實上,相比其他移動系統,鴻蒙系統的區別的確相當大。從硬件載體上來說,市面最大的iOS和安卓主要面對的是手機和平板,鴻蒙則可搭載在電視、手表、汽車、智能家居等任何IoT設備之上。
華為方面強調,鴻蒙OS與傳統的iOS、Android系統的概念不同,其定位是萬物互聯時代的操作系統,面向的是全場景,包括智能穿戴、家用電器、汽車、電視等。
華為消費者業務軟件部副總裁楊海松曾指出,HarmonyOS最終目標就是要幫助開發者,讓開發跨端應用像開發單端應用一樣簡單!
為了實現這一目標,發布了三大組件,即分布式應用框架、分布式UI框架,以及DevEco Studio工具平臺。他強調,“HarmonyOS在設計之初,就是面向未來萬物互聯時代的操作系統。HarmonyOS的對手不是安卓,也不是iOS,而是萬物互聯時代的生態枷鎖。
分布式應用框架:一次開發多端部署。HarmonyOS 2.0手機應用開發者Beta版,通過分布式應用框架以及15000多個APls,將復雜的設備間協同封裝成簡單接口,實現了一次開發、多端部署的特性,避免了開發者在不同設備之間的重復開發。
分布式UI框架:讓開發效率倍增。分布式UI框架可以提供拉伸、縮放、隱藏、折行、均分、占比、延伸7類自適應布局能力,極大地提高了跨端UI開發效率;同時,針對各類不同設備有不同交互方式,HarmonyOS的歸一化控件設計,還能讓開發者只需關注交互本身,助力跨端交互開發。
DevEco Studio:輕松跨端開發調試。全新版本的集成開發工具DevEco Studio 2.0 Beta3具有四大功能:一是集成了9套手機應用模板,覆蓋新聞、購物等應用場景,可減少代碼輸入1000多行;二是具有多端界面預覽和實時反饋功能,開發者可以實時看到多個界面的預覽效果,讓前端開發效率倍增;三是分布式調試,可在分布式的應用開發過程中進行錯誤診斷,針對異常代碼進行故障分析與定位解決等;四是支持20多種器件及傳感器逼真模擬,包括連續導航、連續計步,以及移動網絡(接收短信/來電)等場景,模擬仿真無限接近真機,讓應用開發者的跨端開發與調測效率大增。
實測鴻蒙與安卓的區別
實際上,有網友實測過鴻蒙與安卓的區別:
開發工具:鴻蒙使用基于 Intellij IDEA 深度定制研發的 DevEco Studio 作為其開發工具。
那么,在應用開發過程中,HarmonyOS(鴻蒙)和 Android(安卓)開發環境有什么不同吶?
一、HarmonyOS 項目和 Android 項目對比:
1.資源目錄的變更
①資源目錄名稱有更改。
安卓 res 目錄,鴻蒙用 resources 目錄,包括 base 和 rawfile 兩部分,其中 base 是核心的資源目錄,常用的都放在這里面,便于查找和使用。rawfile 會原封不動打包到生成的應用里面。
安卓是 res/values 目錄,鴻蒙是 resources/element 目錄。
安卓 raw 目錄,鴻蒙用 rawfile 目錄。
②資源目錄分門別類,統一管理。
Android 目錄結構就比較松散,沒有統一的文件夾管理,res/values 目錄里面可以創建各種資源的 xml 文件,只能去官網查看有哪些可以創建。
鴻蒙有 base 目錄統一管理。
③部分資目錄刪除,新增一些資源目錄類型。
比如 float.json 文件,plural.json 文件,profile 文件夾等。
④編寫方式有改變,xml 變更為 json。
安卓的 values 里面是 xml 寫的,鴻蒙是 element 目錄里面的,都是 json 格式的。
同類型資源對比圖:
完整的資源目錄的具體變更對比如下圖所示:
2.配置文件的變更。
清單文件 AndroidManifest 變成了 config.json 文件。
3.Java 代碼的變更
完整的 Java 目錄的變更對比如下圖所示:
二、HarmonyOS 項目和微信小程序項目對比
完整的 JS 目錄和微信小程序對比如下圖所示:
相信在代碼完全公開之下,鴻蒙OS是否是安卓套殼能夠得到明確的驗證。
結語
PC時代稱王的操作系統是微軟,移動互聯網時代安卓和蘋果二分天下,物聯網時代誰是最終贏家,還未可知。
但無論鴻蒙能否最終實現一統物聯網系統的構想。在國產操作系統幾近空白的情況下,鴻蒙的誕生和可用,本身已是抵御危機的一個里程碑。