方舟UI框架
方舟UI框架(簡稱ArkUI[1],原名方舟開發框架)是一個由華為[2]開發的聲明式的用戶界面框架,用於在原生鴻蒙、OpenHarmony以及Oniro OS應用程序上構建用戶界面。ArkUI採用基於TypeScript聲明式UI語法擴展而來的ArkTS語言,同時也支持使用鴻蒙標記語言(HarmonyOS Markup Language,縮寫HML)、JavaScript和CSS以類似Vue 2的語法、MVVM範式開發。[3][4][5]
ArkUI與DevEco Studio IDE集成,提供實時預覽[6]、調試和其他開發功能。
ArkUI-X是基於ArkUI擴展的跨平台用戶界面框架,可使ArkUI不局限於OpenHarmony、HarmonyOS,運行到Android、 iOS等系統上。[7][8]
歷史
編輯在2023年8月的HDC 2023大會上,華為宣布了HarmonyOS 4.0的ArkUI改進,可以使用ArkTS和Ark Engine進行原生HarmonyOS NEXT軟件開發,並引入了ArkGraphics 2D和ArkGraphics3D框架。[9]
特性
編輯UI元素
編輯頁面是ArkUI中系統調度的最小單位,組件是最小分割單位。[3]系統組件是ArkUI框架中的內置組件,分為容器組件和基礎組件兩種。例如,Row和Column都屬於容器組件,可容納其他組件;Text和Button組件屬於基礎組件。[10]
多線程
編輯ArkTS使用單線程模型,對象跨線程使用序列化方式通過ArrayBuffer和SharedArrayBuffer共享。[11]
示例代碼
編輯import ArkTS
// Index.ets
import router from '@ohos.router';
@Entry
@Component
struct Index {
@State message: string = 'Hello World'
build() {
Row() {
Column() {
Text(this.message)
.fontSize(50)
.fontWeight(FontWeight.Bold)
// Add a button to respond to user clicks.
Button() {
Text('Next')
.fontSize(30)
.fontWeight(FontWeight.Bold)
}
.type(ButtonType.Capsule)
.margin({
top: 20
})
.backgroundColor('#0D9FFB')
.width('40%')
.height('5%')
// Bind the onClick event to the Next button so that clicking the button redirects the user to the second page.
.onClick(() => {
router.pushUrl({ url: 'pages/Second' })
})
}
.width('100%')
}
.height('100%')
}
}
其中,@ohos.router
路由庫實現了頁面的流轉,調用前需在 main_pages.json 文件中聲明。[12]
應用
編輯- 鴻蒙原生版淘寶通過使用ArkUI和ArkTs能力,將購物結算場景性能提升至安卓版本的1.5 倍。[13]
參考文獻
編輯- ^ 方舟开发框架(ArkUI)概述. [2024-08-07]. (原始內容存檔於2024-08-14) (中文(中國大陸)).
- ^ Gołębiowski, Dariusz. MAKE MOBILE GAME: Tutorial Based On The Game Falling Jumping Shapes. poswojsku.pl sp. z o.o. 2023-03-01. ISBN 978-83-964647-3-6 (英語).
- ^ 3.0 3.1 褚洪波. 鸿蒙App开发全流程实战. 機械工業出版社. ISBN 9787111714910.
- ^ Parker, Victoria. HDC Technical Sub-forum: A comprehensive look at HarmonyOS 'next-generation UI Framework. Mo4Tech. (原始內容存檔於2024-02-13).
- ^ 徐, 禮文. HarmonyOS操作系统应用开发实战(JavaScript版). 清華大學出版社. ISBN 9787302600312.
- ^ 范承宇; 李競擇; 歐陽迪. 基于方舟开发框架的智能装备监控应用研究. 機電產品開發與創新 (中國兵器裝備集團自動化研究所有限公司). 2024-03-28, 37 (02): 114–117 –透過CNKI.
- ^ IT之家. 开源鸿蒙 OpenHarmony 4.0 Beta2 发布,方舟框架 ArkUI-X 首发. 搜狐. [2024-11-25].
- ^ 連志安. OpenHarmony当前进展和未来趋势. 單片機與嵌入式系統應用. 2023, 23 (11): 4–9+13. ISSN 1009-623X.
- ^ Bhati, Kamlesh. Huawei HarmonyOS NEXT Official Now: Bring Spatial Design and Vivid Color Concepts. Sparrownews.com. (原始內容存檔於2024-02-13).
- ^ 劉玥; 張榮超. 鸿蒙原生应用开发:ArkTS语言快速上手. 人民郵電出版社. 2024-07-01. ISBN 9787115642509.
- ^ KFive啟程小組. HarmonyOS NEXT启程——零基础构建纯血鸿蒙应用. 電子工業出版社. 2024. ISBN 9787121488320.
- ^ 張歐亞; 黃濤; 曾超; 葉榮濤. 鸿蒙OS智能终端适老化软件研发探索. 信息技術與工程學院學報 (廣州商學院). 2024, (13). doi:10.19850/j.cnki.2096-4706.2024.13.031 –透過CNKI (中文(中國大陸)).
- ^ IT之家. 启动时间 1 秒内,淘宝鸿蒙原生版上线 HarmonyOS NEXT. 騰訊網. 2024-07-22 [2024-11-25] (中文(中國大陸)).