新聞中心
鴻蒙系統(tǒng)的代碼是什么?
基于C++開發(fā)的開源操作系統(tǒng)。鴻蒙系統(tǒng)一般指華為鴻蒙系統(tǒng)。華為鴻蒙系統(tǒng)(HUAWEIHarmonyOS),是華為在2019年8月9日于東莞舉行華為開發(fā)者大會(huì)(HDC.2019)上正式發(fā)布的操作系統(tǒng)。
成都地區(qū)優(yōu)秀IDC服務(wù)器托管提供商(成都創(chuàng)新互聯(lián)).為客戶提供專業(yè)的電信內(nèi)江機(jī)房,四川各地服務(wù)器托管,電信內(nèi)江機(jī)房、多線服務(wù)器托管.托管咨詢專線:18980820575
鴻蒙OS是用什么語言編寫的,它的應(yīng)用又是用什么語言可以編寫?
鴻蒙OS是基于Linux內(nèi)核源碼開發(fā)實(shí)現(xiàn)的,OS實(shí)現(xiàn)代碼主要是C語言,并且內(nèi)核提供的原生系統(tǒng)調(diào)用接口肯定也是C語言接口,上層APP應(yīng)用兼容現(xiàn)有的安卓JAVA程序,可能需要重新編譯JAVA應(yīng)用程序代碼即可運(yùn)行。
應(yīng)用編寫需要用java語言。
鴻蒙OS(英文:HarmonyOS)。在2019年8月9日,華為在東莞舉行華為開發(fā)者大會(huì),正式發(fā)布操作系統(tǒng)鴻蒙OS。鴻蒙OS是一款“面向未來”的操作系統(tǒng),一款基于微內(nèi)核的面向全場景的分布式操作系統(tǒng),它將適配手機(jī)、平板、電視、智能汽車、可穿戴設(shè)備等多終端設(shè)備。
擴(kuò)展資料:
技術(shù)特性:
1、確定時(shí)延引擎和高性能IPC技術(shù)實(shí)現(xiàn)系統(tǒng)天生流暢
鴻蒙OS通過使用確定時(shí)延引擎和高性能IPC兩大技術(shù)解決現(xiàn)有系統(tǒng)性能不足的問題。確定時(shí)延引擎可在任務(wù)執(zhí)行前分配系統(tǒng)中任務(wù)執(zhí)行優(yōu)先級及時(shí)限進(jìn)行調(diào)度處理,優(yōu)先級高的任務(wù)資源將優(yōu)先保障調(diào)度,應(yīng)用響應(yīng)時(shí)延降低25.7%。鴻蒙微內(nèi)核結(jié)構(gòu)小巧的特性使IPC(進(jìn)程間通信)性能大大提高,進(jìn)程通信效率較現(xiàn)有系統(tǒng)提升5倍
2、基于微內(nèi)核架構(gòu)重塑終端設(shè)備可信安全。
鴻蒙OS采用全新的微內(nèi)核設(shè)計(jì),擁有更強(qiáng)的安全特性和低時(shí)延等特點(diǎn)。微內(nèi)核設(shè)計(jì)的基本思想是簡化內(nèi)核功能,在內(nèi)核之外的用戶態(tài)盡可能多地實(shí)現(xiàn)系統(tǒng)服務(wù),同時(shí)加入相互之間的安全保護(hù)。微內(nèi)核只提供最基礎(chǔ)的服務(wù),比如多進(jìn)程調(diào)度和多進(jìn)程通信等。
3、鴻蒙OS將微內(nèi)核技術(shù)應(yīng)用于可信執(zhí)行環(huán)境(TEE),通過形式化方法,重塑可信安全。
通過統(tǒng)一IDE支撐一次開發(fā),多端部署,實(shí)現(xiàn)跨終端生態(tài)共享。鴻蒙OS憑借多終端開發(fā)IDE,多語言統(tǒng)一編譯,分布式架構(gòu)Kit提供屏幕布局控件以及交互的自動(dòng)適配,支持控件拖拽,面向預(yù)覽的可視化編程,從而使開發(fā)者可以基于同一工程高效構(gòu)建多端自動(dòng)運(yùn)行App,實(shí)現(xiàn)真正的一次開發(fā),多端部署,在跨設(shè)備之間實(shí)現(xiàn)共享生態(tài)。
參考資料來源:百度百科-華為鴻蒙系統(tǒng)
接收華為鴻蒙代碼的開源基金會(huì):已有8大開源項(xiàng)目,3個(gè)操作系統(tǒng)
眾所周知,前幾天華為發(fā)了一則通知,其中提到了華為已于2020年、2021年分兩次將鴻蒙 操作系統(tǒng)的基礎(chǔ)能力全部捐獻(xiàn)給開放原子開源基金會(huì),開源項(xiàng)目名為OpenHarmony。
而這則消息一傳出之后, 網(wǎng)上各種說法都有,誤解之類的也特別多。而這個(gè)“ 開放原子開源基金會(huì)”也徹底的火了。
那么開放原子開源基金會(huì)究竟是什么來頭?其它在它的官網(wǎng)上面有是詳細(xì)介紹的,它本身是在民政部登記成立的中立性質(zhì)的、非營利機(jī)構(gòu),開源基金會(huì)的服務(wù)范圍包括開源軟件、開源硬件、開源芯片及開源內(nèi)容等。
由于它的業(yè)務(wù)主管單位是工信部,所以很多人因此認(rèn)為屬于工信部的,這就大錯(cuò)特錯(cuò)了,像國內(nèi)的軟件廠商、手機(jī)廠商等都是在工信部的管理之下,你能說它們是工信部的?
在國外其實(shí)有很多的開源社區(qū),比如 Apache軟件基金會(huì)、Linux基金會(huì)、OpenStack基金會(huì)等,而 開放原子開源基金也參照這引起基金會(huì)于2020年6月份成立的,由 阿里巴巴、百度、華為、浪潮、騰訊、360、招商銀行等企業(yè)發(fā)起,是國內(nèi)唯一的一家開源基金會(huì)。
在開放原子基金會(huì)的官網(wǎng)上可以看到,目前公開接收到的開源項(xiàng)目,已經(jīng)有8個(gè),其中有3個(gè)就是操作系統(tǒng),并且它們開源都比OpenHarmony要早。
如上圖所示,第一個(gè)是阿里的alios Things,這是阿里的一款 物聯(lián)網(wǎng)嵌入式操作系統(tǒng)。騰訊也有一款操作系統(tǒng),叫做TencentOS tiny,還有華為的這一款全場景的OpenHarmony。
此外還有 浪潮公司的云溪數(shù)據(jù)庫ZNbase和低代碼開發(fā)語言UBML,騰訊的企業(yè)級容器服務(wù)平臺(tái)TKEStack,360的類Redis存儲(chǔ)系統(tǒng)項(xiàng)目Pika,百度的底層區(qū)塊 鏈項(xiàng)目XuperChain。
可見, OpenHarmony不是該基金會(huì)的第一個(gè)開源項(xiàng)目,在它之前已經(jīng)有很多廠商捐贈(zèng)了代碼,進(jìn)行了開源,也不會(huì)是最后一個(gè),相信以后會(huì)有越來越多的開源項(xiàng)目加入進(jìn)來的。
「鴻蒙開發(fā) 3」華為鴻蒙應(yīng)用開發(fā)的低代碼(Super Visual)開發(fā)方式
開發(fā)前可以了解下鴻蒙: [鴻蒙開發(fā) 序]華為鴻蒙操作系統(tǒng)(HarmonyOS)簡介及開發(fā)環(huán)境搭建
開發(fā)前的準(zhǔn)備:「鴻蒙開發(fā) 1」華為鴻蒙應(yīng)用集成開發(fā)環(huán)境DevEco Studio安裝和設(shè)置
了解鴻蒙應(yīng)用開發(fā)的基本開發(fā)流程:「鴻蒙開發(fā) 2」第一個(gè)華為鴻蒙(HarmonyOS)應(yīng)用程序(App)
本章目標(biāo):
1 了解華為鴻蒙應(yīng)用開發(fā)的可視化(低代碼)方式
2 通過構(gòu)建一個(gè)簡單的具有頁面跳轉(zhuǎn)功能的應(yīng)用
低代碼開發(fā)方式,即通過可視化界面開發(fā)方式快速構(gòu)建布局、編輯UI界面,可有效降低用戶的上手成本并提升用戶構(gòu)建UI界面的效率。
1 打開DevEco Studio,創(chuàng)建一個(gè)新工程,選擇支持Phone / Tablet / Wearable(手機(jī) / 平板 / s可穿戴)的模板,我們在此直接選擇Empty Ability
Project name工程名稱填SuperVisual
Development mode開發(fā)方式選擇Super Visual
其它的可以使用默認(rèn)設(shè)置,點(diǎn)擊完成,進(jìn)入編輯界面
1 在Project(項(xiàng)目)窗口,刪除工程運(yùn)行默認(rèn)的入口文件夾:“entry src main js default pages index”文件夾
2 在Project窗口,選擇工程中的“entry src main js default pages”,單擊鼠標(biāo)右鍵,選擇“New JS Visual”
JS visual name填first,點(diǎn)擊完成,進(jìn)入編輯界面
創(chuàng)建完成后,可以看到“entry src main supervisual default pages page page.visual”的文件目錄結(jié)構(gòu)
3 第一個(gè)頁面內(nèi)有一個(gè)容器、文本和一個(gè)按鈕,通過Div、Text和Button組件來實(shí)現(xiàn)
(1)分別選中first.visual畫面中的Text、Div組件,單擊鼠標(biāo)右鍵,選擇Delete刪除
(2)選中UI Control中的Div組件,將其拖至畫布
點(diǎn)擊右側(cè)屬性樣式欄中的通用樣式圖標(biāo)(General),設(shè)置Div組件的高度Height為100%,使其占滿屏幕
點(diǎn)擊右側(cè)屬性樣式欄中的樣式圖標(biāo)(Flex),設(shè)置Div組件的FlexDirection樣式為column,使Div的主軸垂直;設(shè)置Div組件的JustifyContent樣式為center,使得其子組件在主軸上居中顯示;設(shè)置Div組件的AlignItems樣式為center,使得其子組件在交叉軸上居中顯示
(3)選中UI Control中的Text組件,將其拖至Div組件的中央?yún)^(qū)域
點(diǎn)擊右側(cè)屬性樣式欄中的屬性圖標(biāo)(Properties),設(shè)置Text組件的Content屬性為 “ Hello World ”
點(diǎn)擊右側(cè)屬性樣式欄中的通用樣式圖標(biāo)(General),設(shè)置Text組件的寬(width)為100%,高(height)為100px
點(diǎn)擊右側(cè)屬性樣式欄中的樣式圖標(biāo)(Feature),設(shè)置組件的FontSize樣式為60px,使得其文字放大;設(shè)置組件的TextAlign樣式為center,使得組件文字居中顯示
(4)選中UI Control中的Button組件,將其拖至Text組件下面
點(diǎn)擊右側(cè)屬性樣式欄中的屬性圖標(biāo)(Properties),設(shè)置Button組件的Value屬性為 “ Next ”,
點(diǎn)擊右側(cè)屬性樣式欄中的通用樣式圖標(biāo)(General),設(shè)置按的寬(width)為40%,高(height)為60px
點(diǎn)擊右側(cè)屬性樣式欄中的樣式圖標(biāo)(Feature),設(shè)置組件的FontSize樣式為40px
至此,第一個(gè)頁面創(chuàng)建完成
我們可以在預(yù)覽窗口中看效果,點(diǎn)擊右側(cè)邊欄的Preview打開預(yù)覽窗口
1 在Project窗口,選擇工程中的“entry src main js default pages”,單擊鼠標(biāo)右鍵,選擇“New JS Visual”
Visual配置界面,JS visual name填second,回車(Enter鍵)或者點(diǎn)擊完成,進(jìn)入編輯界面
2 第二個(gè)頁面中有一個(gè)容器和文本,通過Div、Text組件實(shí)現(xiàn),現(xiàn)在編輯器已經(jīng)為我們創(chuàng)建好了,我們就來修改下它們的屬性(你也可以刪除原有的自己創(chuàng)建,具體步驟參考本章第二節(jié)“二 創(chuàng)建第一個(gè)頁面”)。
選中Text組件,點(diǎn)擊右側(cè)屬性樣式欄中的屬性圖標(biāo)(Properties),設(shè)置Text組件的Content屬性為 “ Hi,I'm always here. ”
點(diǎn)擊右側(cè)屬性樣式欄中的通用圖標(biāo)(General),設(shè)置組件的寬(width)為100%,高為60px
點(diǎn)擊右側(cè)屬性樣式欄中的樣式圖標(biāo)(Feature),設(shè)置組件的FontSize樣式為36px,TextAlign樣式為center
這樣我們的第二個(gè)頁面創(chuàng)建成功了
1 在Project窗口,打開工程中的“entry src main js default pages first first.js”, 導(dǎo)入router模塊,頁面路由router根據(jù)頁面的uri來找到目標(biāo)頁面,從而實(shí)現(xiàn)跳轉(zhuǎn)。示例代碼如下:
2 打開或者切換到first.visual頁面,選中畫布上的Button組件,點(diǎn)擊右側(cè)屬性樣式欄中的事件圖標(biāo)(Events),鼠標(biāo)點(diǎn)擊Click事件的輸入框,選擇launch事件
3 在預(yù)覽窗口中查看項(xiàng)目效果,點(diǎn)擊Next按鈕后發(fā)現(xiàn)我們的頁面成功跳轉(zhuǎn)了。
到此,本章的目標(biāo)就完成了。
鴻蒙確實(shí)用了安卓開源項(xiàng)目代碼,但安卓套殼論卻是一戳即破的謊言
現(xiàn)在華為鴻蒙系統(tǒng)(Harmony OS)已經(jīng)到了大規(guī)模推廣、搭載前的最后公測階段,已經(jīng)有很多人升級到了鴻蒙,事實(shí)就擺在面前了,所以現(xiàn)在關(guān)于鴻蒙系統(tǒng)是PPT的說法,差不多都該很快消失了。
目前對鴻蒙系統(tǒng)的質(zhì)疑聲音,又集中到了“安卓套殼”這個(gè)老話題上來,畢竟鴻蒙系統(tǒng)確實(shí)是全面兼容安卓APP,而且在日常界面上也和安卓系統(tǒng)很類似。很多所謂程序員就根據(jù)鴻蒙系統(tǒng)中確實(shí)有很多AOSP(安卓開源項(xiàng)目)的開源代碼來認(rèn)定,鴻蒙系統(tǒng)就是安卓套個(gè)殼而已。
一、這樣的觀點(diǎn),實(shí)際上從稍有知識(shí)產(chǎn)權(quán)、法律常識(shí)的角度看,根本就是不可能成立的。
難道一個(gè)強(qiáng)悍的谷歌公司,就沒有幾個(gè)律師(法務(wù))懂這事?你以為谷歌強(qiáng)制要求的 安卓手機(jī)開機(jī)界面“Powered by android” 只是個(gè)擺設(shè),或是個(gè)花架子沒用的?如果說誰家手機(jī)系統(tǒng)底層是安卓,卻不遵從這個(gè)規(guī)則,怕是早就被谷歌告進(jìn)了法院。谷歌有多么狠沒人不知道吧?要知道谷歌自家私有的GMS(谷歌移動(dòng)服務(wù)),早就禁止華為手機(jī)安裝了。當(dāng)時(shí)谷歌那可是步步緊逼,堅(jiān)決把禁止華為使用GMS進(jìn)行到底的力度。
放心吧,谷歌沒這么傻,華為更沒這么傻。如果鴻蒙系統(tǒng)不是完全自己開發(fā)的,華為有必要多此一舉? 華為現(xiàn)在的 “安卓+EMUI+HMS(華為移動(dòng)服務(wù))”模式 ,不也是用得好好的嗎? 而且,“安卓+EMUI+HMS”這個(gè)模式,只要華為想用安卓開源系統(tǒng),還可以一直用下去,完全符合開源項(xiàng)目規(guī)則。
其實(shí)這也是目前小米、OPPO、vivo、三星等所有安卓系手機(jī)廠家都在做的,比如小米的安卓+MIUI等。況且,華為的EMUI也很強(qiáng)大,完全不比任何別家UI系統(tǒng)差。
二、即便是從軟件技術(shù)、軟件開源社區(qū)及開源軟件規(guī)則這些常識(shí)看,鴻蒙系統(tǒng)使用AOSP(安卓開源項(xiàng)目)的開源代碼不但合規(guī),還是合情、合理的。
下面咱們來看看2021年1月下旬,華為消費(fèi)者業(yè)務(wù)軟件部總裁、鴻蒙操作系統(tǒng)負(fù)責(zé)人王成錄接受采訪時(shí),對鴻蒙系統(tǒng)全面、深入的介紹。王成錄這位資深“程序員”,應(yīng)該是最有資格介紹鴻蒙系統(tǒng)的了。
這里王成錄還是把對鴻蒙系統(tǒng)的質(zhì)疑歸結(jié)于理解不一致的問題。他說并不是所有安卓代碼都是谷歌開發(fā)的,安卓系統(tǒng)的絕大部分代碼來自開源社區(qū)。
鴻蒙也會(huì)吸收社區(qū)的優(yōu)秀技術(shù)和代碼,用了AOSP(Android 開源項(xiàng)目)的開源代碼,就認(rèn)定鴻蒙是安卓換了皮,說明這類吐槽者沒有太準(zhǔn)確理解什么是開源。開源系統(tǒng)的最大意義就在于大家都來貢獻(xiàn)代碼,大家都可以免費(fèi)使用。而華為本身就是安卓開源系統(tǒng)最大的貢獻(xiàn)者之一。
王成錄說到 今年10月,鴻蒙第三階段的開源代碼會(huì)上線,來自AOSP社區(qū)的、由谷歌貢獻(xiàn)的代碼就幾乎沒有了 。相信華為的這個(gè)時(shí)間表,那些吐槽的所謂“程序員”應(yīng)該可以理解了。
由此可見, 鴻蒙系統(tǒng)是龐大的,特別是前期吸收開源社區(qū)的技術(shù)、代碼,都可以顯著提高系統(tǒng)開發(fā)的進(jìn)程,華為何樂而不為呢?這個(gè)槽點(diǎn),該破了。
類似的,鴻蒙系統(tǒng)對于安卓APP的兼容,也是這個(gè)連續(xù)性的道理。王成錄明確提到,現(xiàn)在鴻蒙生態(tài)的應(yīng)用量(APP及開發(fā)者)還不夠多。他說谷歌安卓系統(tǒng)有約2000萬開發(fā)者,蘋果iOS有2400萬開發(fā)者,鴻蒙生態(tài)的開發(fā)者數(shù)量還差很多。所以, 在鴻蒙生態(tài)起步的初級階段,兼容安卓不但不該被吐槽,反而應(yīng)該是一個(gè)妙招 。
當(dāng)然華為也沒有忽視自有生態(tài)建設(shè)。華為選擇了中國應(yīng)用市場(APP)下載量排名前200的廠家,一個(gè)個(gè)去溝通,已確定做方案的達(dá)到70%。鴻蒙生態(tài)建設(shè)非一日之功,早在緊張進(jìn)行中。
這些吐槽的所謂程序員,要么就是揣著明白裝糊涂,為了吐槽鴻蒙而裝糊涂;要么根本就不是程序員,打著程序員的幌子,純粹就是為了吐槽鴻蒙而已。
三、最后做個(gè)善意提醒,現(xiàn)在用著安卓系統(tǒng)的手機(jī)廠家,也不要高興太早,或是暗自慶幸自己運(yùn)氣好,沒有被谷歌打壓。
谷歌可是在一步步收緊對安卓系統(tǒng)的控制,說不定啥時(shí)候讓你交點(diǎn)兒使用費(fèi),怕是躲不開的。而且交點(diǎn)兒使用費(fèi),怕這還是好的。 要是哪天你也想真心實(shí)意做點(diǎn)兒技術(shù)活,也搞點(diǎn)兒高新 科技 ,難免要被美國盯上,難道就不怕和華為一樣也被禁掉GMS?多做點(diǎn)兒準(zhǔn)備,不是壞事。
并且鴻蒙系統(tǒng)的微內(nèi)核、軟總線、分布式架構(gòu)的先進(jìn)性,是安卓系統(tǒng)不可匹敵的。隨著鴻蒙系統(tǒng)生態(tài)進(jìn)一步完善,加上華為鴻蒙系統(tǒng)的開放政策,相信用上更先進(jìn)的系統(tǒng),對任何廠商都有吸引力。用上中國自己的操作系統(tǒng),何樂而不為?連谷歌都在開發(fā)安卓的替代系統(tǒng)Fuchsia了,難道還有人懷疑安卓必將被淘汰的結(jié)果嗎?
鴻蒙系統(tǒng)確實(shí)是個(gè)新事物,很多人對其缺乏認(rèn)識(shí)是可以理解的。我們中國之前確實(shí)也沒有拿出一個(gè)成功的操作系統(tǒng),鴻蒙系統(tǒng)突圍而出的難度的確很大,有些人缺乏信心也有可能。 但是現(xiàn)在華為有實(shí)力、有機(jī)會(huì),鴻蒙成功就在眼前,我們還腿軟,就不該了。
鴻蒙OS 2.0即將開源,是自研還是套殼,460萬關(guān)鍵代碼揭曉答案
自從華為宣布自家的鴻蒙OS之后,外界的各種質(zhì)疑聲就一直不斷。就像華為最開始宣布研發(fā)麒麟芯片的時(shí)候,基本上沒有什么人認(rèn)為華為會(huì)成功,但是經(jīng)過這么多年的努力,華為的麒麟芯片已經(jīng)完全不輸于主流的手機(jī)芯片。然而在遭到打壓之后,華為也是宣布了自家的操作系統(tǒng)鴻蒙OS,和上一次研發(fā)芯片一樣,外界對鴻蒙OS的發(fā)展同樣持懷疑的態(tài)度,因?yàn)橹耙泊_實(shí)有不少大廠研發(fā)自家的系統(tǒng),結(jié)果都是不了了之。
除了不看好華為鴻蒙OS的發(fā)展之外,對于鴻蒙OS究竟真的是一款全新自研的操作系統(tǒng),還是說它只是安卓換皮而已,至今還在網(wǎng)上有不同的說法。
因?yàn)樵邙櫭蒓S公布之初,華為方面表示將會(huì)兼容安卓應(yīng)用。同時(shí)在鴻蒙OS 2.0開發(fā)者版本公布之后,支持的APP絕大部分還是基于安卓平臺(tái)運(yùn)行的。最近還有一個(gè)尷尬的事情,那就是用鴻蒙OS玩 游戲 ,被 游戲 誤認(rèn)為是安卓模擬器。種種跡象都讓人認(rèn)為鴻蒙只是安卓套皮而已。
所以,華為想要證明自己是不是自研系統(tǒng),或許公布核心代碼就是最好的證明。最近就有消息表示,華為將會(huì)在6.2號之后,陸續(xù)對鴻蒙OS 2.0開源。
鴻蒙OS 2.0大概有460萬行關(guān)鍵代碼,相當(dāng)于Android 10 1525萬行的三成,大約有1.8萬個(gè)關(guān)鍵API,這也只有安卓10的一半左右。應(yīng)用安裝包的大小只有安卓的60%-70%左右。而且手機(jī)、平板、可穿戴設(shè)備、電視等產(chǎn)品都可以通用。
既然華為敢開源鴻蒙OS的代碼,就表示華為有信心認(rèn)為自己并非是套皮而已。之所以目前華為兼容安卓應(yīng)用,也是一種妥協(xié)吧,在前期鴻蒙OS并沒有太多的應(yīng)用可以使用,為了發(fā)展自家的系統(tǒng),前期讓用戶先使用基于安卓平臺(tái)的APP,等到自家的生態(tài)發(fā)展起來,安卓自然就可以全部拋棄了。
所以面對很多人的質(zhì)疑,華為鴻蒙OS到底是不是套皮系統(tǒng),相信答案很快就可以揭曉了。
標(biāo)題名稱:鴻蒙開發(fā)項(xiàng)目代碼,鴻蒙開放源代碼
鏈接地址:http://www.ef60e0e.cn/article/dsecgsp.html