99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

OpenHarmony基礎(chǔ)

ArkUI詳解 ? 來(lái)源:ArkUI詳解 ? 作者:ArkUI詳解 ? 2022-12-07 08:43 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

OpenHarmony介紹

OpenHarmony 是由開(kāi)放原子開(kāi)源基金會(huì)孵化及運(yùn)營(yíng)的開(kāi)源項(xiàng)目,目標(biāo)是面向全場(chǎng)景、全連接、全智能時(shí)代,基于開(kāi)源的方式,搭建一個(gè)智能終端設(shè)備操作系統(tǒng)的框架和平臺(tái),促進(jìn)萬(wàn)物互聯(lián)產(chǎn)業(yè)的繁榮發(fā)展。

OpenHarmony架構(gòu)與安全

img

OpenHarmony整體架構(gòu)遵從分層設(shè)計(jì),從下往上依次為:內(nèi)核層,系統(tǒng)服務(wù)層,框架層和應(yīng)用層。

系統(tǒng)功能按照“系統(tǒng)>子系統(tǒng)>功能/模塊”逐級(jí)展開(kāi),在多設(shè)備部署

OpenHarmony 系統(tǒng)類(lèi)型

image-20220907204347040

輕量系統(tǒng)(mini system)

面向MCU類(lèi)處理器例如Arm Cortex-M、RISC-V 32位的設(shè)備,硬件資源極其有限,支持的設(shè)備最小內(nèi)存為128KiB,可以提供多種輕量級(jí)網(wǎng)絡(luò)協(xié)議,輕量級(jí)的圖形框架,以及豐富的IOT總線讀寫(xiě)部件等??芍蔚漠a(chǎn)品如智能家居領(lǐng)域的連接類(lèi)模組、傳感器設(shè)備、穿戴類(lèi)設(shè)備等。

小型系統(tǒng)(small system)

面向應(yīng)用處理器例如Arm Cortex-A的設(shè)備,支持的設(shè)備最小內(nèi)存為1MiB,可以提供更高的安全能力、標(biāo)準(zhǔn)的圖形框架、視頻編解碼的多媒體能力??芍蔚漠a(chǎn)品如智能家居領(lǐng)域的IP Camera、電子貓眼、路由器以及智慧出行域的行車(chē)記錄儀等。

標(biāo)準(zhǔn)系統(tǒng)(standard system)

面向應(yīng)用處理器例如Arm Cortex-A的設(shè)備,支持的設(shè)備最小內(nèi)存為128MiB,可以提供增強(qiáng)的交互能力、3D GPU以及硬件合成能力、更多控件以及動(dòng)效更豐富的圖形能力、完整的應(yīng)用框架。可支撐的產(chǎn)品如高端的冰箱顯示屏。

ArkUI

方舟開(kāi)發(fā)框架(簡(jiǎn)稱(chēng):ArkUI)是一套構(gòu)建分布式應(yīng)用界面的聲明式UI開(kāi)發(fā)框架。它使用極簡(jiǎn)的UI信息語(yǔ)法、豐富的UI組件、以及實(shí)時(shí)界面預(yù)覽工具,幫助大家在OpenHarmony應(yīng)用開(kāi)發(fā)中提升開(kāi)發(fā)效率30%。您只需使用一套ArkTS API,就能在多個(gè)OpenHarmony設(shè)備上提供生動(dòng)而流暢的用戶(hù)界面體驗(yàn)。

極簡(jiǎn)的UI信息語(yǔ)法

ArkUI開(kāi)發(fā)框架采用基于 TypeScript 擴(kuò)展的極簡(jiǎn)的聲明式UI描述界面語(yǔ)法,提供了類(lèi)自然語(yǔ)言的UI描述和組合,開(kāi)發(fā)者只需用幾行簡(jiǎn)單直觀的聲明式代碼,即可完成界面功能。

豐富的內(nèi)置UI組件

ArkUI開(kāi)發(fā)框架內(nèi)置了豐富而精美的多態(tài)組件,可滿(mǎn)足大部分應(yīng)用界面開(kāi)發(fā)的需求,開(kāi)發(fā)者可以輕松地向幾乎任何UI控件添加動(dòng)畫(huà)并選擇一系列框架內(nèi)置的動(dòng)畫(huà)能力,可為用戶(hù)帶來(lái)平滑而自然的體驗(yàn)。其中多態(tài)是指UI描述是統(tǒng)一的,UI呈現(xiàn)在不同類(lèi)型設(shè)備上會(huì)有所不同。比如 Button 組件在手機(jī)和手表會(huì)有不同的樣式和交互方式。

多維度的狀態(tài)管理機(jī)制

ArkUI開(kāi)發(fā)框架為開(kāi)發(fā)者提供了跨設(shè)備數(shù)據(jù)綁定功能和多維度的狀態(tài)管理機(jī)制(組件內(nèi)/組件間/全局/分布式數(shù)據(jù)驅(qū)動(dòng)UI變更),支持靈活的數(shù)據(jù)驅(qū)動(dòng)的UI變更,幫助開(kāi)發(fā)者節(jié)省70%代碼完成跨端界面應(yīng)用開(kāi)發(fā)。

支持多設(shè)備開(kāi)發(fā)

ArkUI開(kāi)發(fā)框架除了提供UI開(kāi)發(fā)套件外還圍繞著多設(shè)備開(kāi)發(fā)提供了多維度的解決方案,進(jìn)一步簡(jiǎn)化開(kāi)發(fā):

基礎(chǔ)開(kāi)發(fā)能力:包括基礎(chǔ)的分層參數(shù)配置(比如色彩、字號(hào)、圓角、間距等),柵格系統(tǒng),原子化布局能力(比如拉伸、折行、隱藏等)。

零部件組件層:包括多態(tài)控件,統(tǒng)一交互能力,以及在此基礎(chǔ)上的組件組合。

面向典型場(chǎng)景:提供分類(lèi)的頁(yè)面組合模板以及示例代碼。

原生性能體驗(yàn)

ArkUI開(kāi)發(fā)框架內(nèi)置了許多核心的UI控件和動(dòng)效,如圖片、列表、網(wǎng)格、屬性動(dòng)畫(huà)、轉(zhuǎn)場(chǎng)動(dòng)畫(huà)等,加持自研的 ArkCompiler 方舟編譯器和 ArkRuntime 方舟運(yùn)行時(shí)深度優(yōu)化,這些都可以在 HarmonyOS / OpenHarmony 設(shè)備上達(dá)到移動(dòng)原生應(yīng)用一樣的性能體驗(yàn)。

實(shí)時(shí)預(yù)覽機(jī)制

ArkUI開(kāi)發(fā)框架支持實(shí)時(shí)界面預(yù)覽特性可幫助開(kāi)發(fā)快速的所見(jiàn)即所得的開(kāi)發(fā)和調(diào)測(cè)界面,無(wú)需連接真機(jī)設(shè)備就可以顯示應(yīng)用界面在任何 HarmonyOS / OpenHarmony 設(shè)備上的UI效果,預(yù)覽的關(guān)鍵特性主要包括:

一致性渲染:和目標(biāo)設(shè)備一致的UI呈現(xiàn)效果。

實(shí)時(shí)性預(yù)覽:改動(dòng)相應(yīng)的代碼,實(shí)時(shí)呈現(xiàn)出相應(yīng)UI效果。另外,代碼能夠和UI雙向聯(lián)動(dòng),代碼改動(dòng)的同時(shí)UI也實(shí)時(shí)變更,UI改動(dòng)的同時(shí)代碼也相應(yīng)地變更。

多維度預(yù)覽:支持頁(yè)面級(jí)預(yù)覽、組件級(jí)預(yù)覽、多設(shè)備預(yù)覽。

高級(jí)UI組件擴(kuò)展能力

ArkUI框架提供了基于XComponent組件的C++自繪制引擎接入(比如游戲引擎)能力,和基于Web組件的HTML5/Web的渲染能力。滿(mǎn)足了開(kāi)發(fā)者在游戲、相機(jī)、地圖、瀏覽器等復(fù)雜應(yīng)用場(chǎng)景的開(kāi)發(fā)訴求,降低了這類(lèi)應(yīng)用移植的門(mén)檻。

Stage 模型

面向開(kāi)發(fā)者提供十幾種不同場(chǎng)景的擴(kuò)展服務(wù)Extension機(jī)制,在保證了應(yīng)用后臺(tái)進(jìn)程合理運(yùn)行的基礎(chǔ)上,規(guī)避了應(yīng)用進(jìn)程之間無(wú)序拉起,達(dá)到保證前臺(tái)資源供給,應(yīng)用調(diào)度更加有序的目的。

ArkTS

之前寫(xiě)一個(gè)應(yīng)用需要了解三種語(yǔ)言(JS/TS、HTML和CSS)。這對(duì)Web開(kāi)發(fā)者相對(duì)友好,但對(duì)非Web開(kāi)發(fā)者來(lái)說(shuō),負(fù)擔(dān)較重。

ArkTS是OpenHarmony優(yōu)選的主力應(yīng)用開(kāi)發(fā)語(yǔ)言。ArkTS基于TypeScript(簡(jiǎn)稱(chēng)TS)語(yǔ)言擴(kuò)展而來(lái),是TS的超集。

ArkTS繼承了TS的所有特性。

當(dāng)前,ArkTS在TS的基礎(chǔ)上主要擴(kuò)展了聲明式UI能力,讓開(kāi)發(fā)者能夠以更簡(jiǎn)潔、更自然的方式開(kāi)發(fā)高性能應(yīng)用。當(dāng)前擴(kuò)展的聲明式UI能力包括如下特性。

基本UI描述:ArkTS定義了各種裝飾器、自定義組件、UI描述機(jī)制,再配合UI開(kāi)發(fā)框架中的內(nèi)置組件及其相關(guān)的事件方法、屬性方法等共同構(gòu)成了UI開(kāi)發(fā)的主體。

狀態(tài)管理:ArkTS提供了多維度的狀態(tài)管理機(jī)制,在UI開(kāi)發(fā)框架中,和UI相關(guān)聯(lián)的數(shù)據(jù),不僅可以在組件內(nèi)使用,還可以在不同組件層級(jí)間傳遞,比如父子組件之間、爺孫組件之間,也可以是應(yīng)用全局范圍內(nèi)的傳遞,還可以是跨設(shè)備傳遞。另外,從數(shù)據(jù)的傳遞形式來(lái)看,可分為只讀的單向傳遞和可變更的雙向傳遞。開(kāi)發(fā)者可以靈活的利用這些能力來(lái)實(shí)現(xiàn)數(shù)據(jù)和UI的聯(lián)動(dòng)。

動(dòng)態(tài)構(gòu)建UI元素:ArkTS提供了動(dòng)態(tài)構(gòu)建UI元素的能力,不僅可以自定義組件內(nèi)部的UI結(jié)構(gòu),還可以復(fù)用組件樣式,擴(kuò)展原生組件。

渲染控制:ArkTS提供了渲染控制的能力。條件渲染可根據(jù)應(yīng)用的不同狀態(tài),渲染對(duì)應(yīng)狀態(tài)下的UI內(nèi)容。循環(huán)渲染可從數(shù)據(jù)源中迭代獲取數(shù)據(jù),并在每次迭代過(guò)程中創(chuàng)建相應(yīng)的組件。

使用限制與擴(kuò)展:ArkTS在使用過(guò)程中存在限制與約束,同時(shí)也擴(kuò)展了雙向綁定等能力。

image-20221205113519597

示例中所包含的ArkTS聲明式開(kāi)發(fā)范式的基本組成說(shuō)明如下:

裝飾器: 用于裝飾類(lèi)、結(jié)構(gòu)、方法以及變量,賦予其特殊的含義,如上述示例中@Entry、@Component和@State都是裝飾器。 具體而言,@Component表示這是個(gè)自定義組件;@Entry則表示這是個(gè)入口組件;@State表示這是組件中的狀態(tài)變量,這個(gè)變量變化會(huì)觸發(fā)UI刷新。

自定義組件:可復(fù)用的UI單元,可組合其他組件,如上述被@Component裝飾的struct Hello。

UI描述:聲明式的方法來(lái)描述UI的結(jié)構(gòu),例如build()方法中的代碼塊。

內(nèi)置組件:ArkTS中默認(rèn)內(nèi)置的基礎(chǔ)組件、容器組件、媒體組件、繪制組件、畫(huà)布組件等各種組件,開(kāi)發(fā)者可以直接調(diào)用,如示例中的Column、Text、Divider、Button等。

屬性方法:用于組件屬性的配置,如fontSize()、width()、height()、color()等,可通過(guò)鏈?zhǔn)秸{(diào)用的方式設(shè)置多項(xiàng)屬性。

事件方法:用于添加組件對(duì)事件的響應(yīng)邏輯,如跟隨在Button后面的onClick(),同樣可以通過(guò)鏈?zhǔn)秸{(diào)用的方式設(shè)置多個(gè)事件響應(yīng)邏輯。

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 開(kāi)源
    +關(guān)注

    關(guān)注

    3

    文章

    3690

    瀏覽量

    43841
  • OpenHarmony
    +關(guān)注

    關(guān)注

    29

    文章

    3854

    瀏覽量

    18647
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    OpenHarmony2025年度競(jìng)賽訓(xùn)練營(yíng)重磅開(kāi)啟

    ? OpenHarmony2025年度競(jìng)賽訓(xùn)練營(yíng) ? ? ? 活動(dòng)介紹 OpenHarmony競(jìng)賽訓(xùn)練營(yíng) 旨在引導(dǎo)高校學(xué)生進(jìn)行OpenHarmony產(chǎn)學(xué)研用,培養(yǎng)更多應(yīng)用型人才和產(chǎn)業(yè)需求有效鏈接
    的頭像 發(fā)表于 07-16 11:51 ?135次閱讀

    請(qǐng)問(wèn)下,openharmony支持哪一款龍芯的開(kāi)發(fā)板?有沒(méi)有開(kāi)源的龍芯的openharmony源碼?

    想買(mǎi)個(gè)2k0300的開(kāi)發(fā)板學(xué)習(xí)龍芯和openharmony,愣是沒(méi)有看到提供openharmony源碼的,也沒(méi)與看到開(kāi)源的代碼。gitee上,openharmony的龍芯sig倉(cāng)庫(kù)也是關(guān)閉的,有沒(méi)有人知道現(xiàn)在是什么情況?
    發(fā)表于 04-26 13:06

    2024年OpenHarmony社區(qū)年度激勵(lì)公示

    在過(guò)去一年里,OpenHarmony項(xiàng)目群技術(shù)指導(dǎo)委員會(huì)(TSC)向所有參與者致以最誠(chéng)摯的感謝!大家的積極參與和鼎力支持推動(dòng)了OpenHarmony社區(qū)的持續(xù)繁榮與高質(zhì)量發(fā)展。OpenHarmony
    的頭像 發(fā)表于 04-21 18:17 ?417次閱讀

    OpenHarmony程序分析框架論文入選ICSE 2025

      近日,ICSE 2025軟件工程實(shí)踐Track放榜,面向OpenAtom OpenHarmony(以下簡(jiǎn)稱(chēng)“OpenHarmony”)的ArkTS程序分析基礎(chǔ)框架--方舟程序分析器(論文題目為
    的頭像 發(fā)表于 01-02 13:41 ?1168次閱讀
    <b class='flag-5'>OpenHarmony</b>程序分析框架論文入選ICSE 2025

    鴻湖萬(wàn)聯(lián)亮相OpenHarmony人才生態(tài)大會(huì)2024

    近日,由開(kāi)放原子開(kāi)源基金會(huì)指導(dǎo),OpenHarmony項(xiàng)目群工作委員會(huì)主辦的OpenHarmony人才生態(tài)大會(huì)2024在武漢隆重舉辦。軟通動(dòng)力子公司鴻湖萬(wàn)聯(lián)作為OpenHarmony項(xiàng)目群A類(lèi)捐贈(zèng)人
    的頭像 發(fā)表于 11-30 10:41 ?635次閱讀

    觸覺(jué)智能亮相OpenHarmony人才生態(tài)大會(huì)2024

    11月27日,OpenHarmony人才生態(tài)大會(huì)2024在武漢隆重舉行,深圳觸覺(jué)智能科技受邀參與,并在OpenHarmony南向生態(tài)社區(qū)發(fā)展論壇分享發(fā)言!
    的頭像 發(fā)表于 11-28 18:27 ?602次閱讀
    觸覺(jué)智能亮相<b class='flag-5'>OpenHarmony</b>人才生態(tài)大會(huì)2024

    通過(guò)WebSocket操作OpenHarmony機(jī)器

    OpenHarmony機(jī)器人中運(yùn)行 ArkTS APP,在APP中通過(guò)WebScoket客戶(hù)端接收指令,然后調(diào)用機(jī)器人接口實(shí)現(xiàn)相關(guān)動(dòng)作。
    發(fā)表于 11-27 16:41

    OpenHarmony首次亮相歐洲開(kāi)源會(huì)議

    OpenHarmony項(xiàng)目群技術(shù)指導(dǎo)委員會(huì)(TSC)主席陳海波受邀參加大會(huì)主論壇分享,由OpenHarmony 與Eclipse Oniro聯(lián)合籌劃的“Think Global, Code Local”分論壇
    的頭像 發(fā)表于 10-26 11:48 ?1001次閱讀
    <b class='flag-5'>OpenHarmony</b>首次亮相歐洲開(kāi)源會(huì)議

    第三屆OpenHarmony技術(shù)大會(huì)星光璀璨、致謝OpenHarmony社區(qū)貢獻(xiàn)者

    10月12日,在上海舉辦的第三屆OpenHarmony技術(shù)大會(huì)上,32家高校OpenHarmony技術(shù)俱樂(lè)部璀璨亮相,30家高校OpenHarmony開(kāi)發(fā)者協(xié)會(huì)盛大啟幕。還分別致謝了年度星光TSG
    的頭像 發(fā)表于 10-21 14:10 ?557次閱讀

    第三屆OpenHarmony技術(shù)大會(huì) “OpenHarmony開(kāi)發(fā)者激勵(lì)計(jì)劃”授牌儀式圓滿(mǎn)舉行

    10月12日,以“技術(shù)引領(lǐng)筑生態(tài),萬(wàn)物智聯(lián)創(chuàng)未來(lái)”為主題的第三屆OpenHarmony技術(shù)大會(huì)隆重舉行,“OpenHarmony開(kāi)發(fā)者激勵(lì)計(jì)劃”授牌儀式在大會(huì)期間同步進(jìn)行。該計(jì)劃旨在增加
    的頭像 發(fā)表于 10-21 11:48 ?672次閱讀
    第三屆<b class='flag-5'>OpenHarmony</b>技術(shù)大會(huì) “<b class='flag-5'>OpenHarmony</b>開(kāi)發(fā)者激勵(lì)計(jì)劃”授牌儀式圓滿(mǎn)舉行

    OpenHarmony年度技術(shù)俱樂(lè)部、個(gè)人及活動(dòng)評(píng)選結(jié)果公示

    2024年度技術(shù)俱樂(lè)部評(píng)選活動(dòng)已經(jīng)圓滿(mǎn)結(jié)束。在此,OpenHarmony項(xiàng)目群技術(shù)指導(dǎo)委員會(huì)(TSC)對(duì)所有參與者的積極參與和辛勤付出表示感謝。經(jīng)過(guò)嚴(yán)格的評(píng)選和審核,現(xiàn)將名單予以公示: 評(píng)選
    的頭像 發(fā)表于 10-05 08:07 ?629次閱讀

    基于ArkTS語(yǔ)言的OpenHarmony APP應(yīng)用開(kāi)發(fā):HelloOpenharmony

    1、程序簡(jiǎn)介該程序是基于OpenHarmony標(biāo)準(zhǔn)系統(tǒng)編寫(xiě)的UI應(yīng)用類(lèi):HelloOpenHarmony。本案例是基于API9接口開(kāi)發(fā)。本案例已在OpenHarmony凌蒙派-RK3568開(kāi)發(fā)
    的頭像 發(fā)表于 09-15 08:09 ?882次閱讀
    基于ArkTS語(yǔ)言的<b class='flag-5'>OpenHarmony</b> APP應(yīng)用開(kāi)發(fā):Hello<b class='flag-5'>Openharmony</b>

    基于ArkTS語(yǔ)言的OpenHarmony APP應(yīng)用開(kāi)發(fā):HelloOpenharmony

    1、程序簡(jiǎn)介 該程序是基于OpenHarmony標(biāo)準(zhǔn)系統(tǒng)編寫(xiě)的UI應(yīng)用類(lèi):HelloOpenHarmony。 本案例是基于API 9接口開(kāi)發(fā)。 本案例已在OpenHarmony凌蒙派-RK3568
    發(fā)表于 09-14 12:47

    河南大學(xué)OpenHarmony技術(shù)俱樂(lè)部正式揭牌成立

    8月30日,由OpenAtom OpenHarmony(以下簡(jiǎn)稱(chēng)“OpenHarmony”)項(xiàng)目群技術(shù)指導(dǎo)委員會(huì)與河南大學(xué)共同舉辦的“河南大學(xué)OpenHarmony技術(shù)俱樂(lè)部成立大會(huì)”在鄭州校區(qū)友蘭
    的頭像 發(fā)表于 09-03 16:12 ?751次閱讀
    河南大學(xué)<b class='flag-5'>OpenHarmony</b>技術(shù)俱樂(lè)部正式揭牌成立

    openharmony移植AT32F407編譯時(shí)錯(cuò)誤

    openharmony上移植AT32F407,hb build后出現(xiàn)鏈接錯(cuò)誤 [OHOS ERROR] /home/sven/openharmony/env_setup
    發(fā)表于 08-18 17:04