- 鴻蒙操作系統應用開發實踐
- 陳美汝 鄭森文等
- 2185字
- 2022-07-28 19:33:52
第1章 走進Harmony
1.1 了解HarmonyOS
當前的移動互聯網創新,仍然僅局限于以手機為主的單一設備,單設備的操作體驗已經不能完全滿足人們在不同場景下的需求,而HarmonyOS正是為萬物互聯而生。HarmonyOS(鴻蒙操作系統)是一款“面向未來”的操作系統,一款面向全場景的分布式操作系統,它創造性地提出了基于同一套系統能力、適配多種終端形態的分布式理念,將多個物理上相互分離的設備融合成一個“超級虛擬終端”,通過按需調用和融合不同軟硬件的能力,實現不同終端設備之間的極速連接、硬件互助和資源共享,為用戶在移動辦公、社交通信、媒體娛樂、運動健康、智能家居等多種全場景下,匹配最合適的設備,提供最佳的智慧體驗。
HarmonyOS主打“1+8+N”的全場景體驗,其中“1”指的是主入口手機,“8”指的是智慧屏、平板、PC、音響、手表、眼鏡、車機和耳機8種設備,“N”則指的是泛IoT硬件構成的華為HiLink生態,其中包括移動辦公、智能家居、健康生活、影音娛樂、智能出行等各大場景下的智能硬件設備。
對于HarmonyOS的應用開發者而言,通過HarmonyOS所提供的多種分布式技術,使應用開發者能夠聚焦于上層業務邏輯,而忽略不同終端設備的形態差異,從而極大地降低了開發難度和成本,提升了開發效率。本書將聚焦于HarmonyOS的應用開發,旨在帶領更多開發者加入HarmonyOS全場景的生態建設中。下面具體介紹一下應用開發所需要的基本知識。
1.1.1 HarmonyOS技術特性
多種設備之間通過HarmonyOS可以實現硬件互助和資源共享,依賴的關鍵技術主要包括分布式軟總線、分布式數據管理、分布式任務調度和分布式設備虛擬化等。
1.分布式軟總線
分布式軟總線是手機、手表、平板、智慧屏、車機等多種終端設備的統一基座,是分布式數據管理和分布式任務調度的基礎,為設備之間的無縫互聯提供了統一的分布式通信能力,能夠快速發現并連接設備,高效地傳輸任務和數據。分布式軟總線示意圖如圖1.1所示。

圖1.1 分布式軟總線示意圖
2.分布式數據管理
分布式數據管理位于分布式軟總線之上,用戶數據不再與單一物理設備進行綁定,而是將多設備的應用程序數據和用戶數據進行同步管理,應用跨設備運行時數據無縫銜接,讓跨設備數據處理如同本地處理一樣便捷。分布式數據管理示意圖如圖1.2所示。

圖1.2 分布式數據管理示意圖
例如基于分布式數據管理,可以通過手機訪問其他設備中的照片和視頻,并將其他設備中的視頻轉移到智慧屏進行播放,也可以將編輯在任一設備中的備忘錄信息進行跨設備更新同步。
3.分布式任務調度
分布式任務調度基于分布式軟總線、分布式數據管理等技術特性,構建統一的分布式服務管理,支持對跨設備的應用進行遠程啟動、遠程控制、綁定/解綁、遷移等操作。在具體的場景下,能夠根據不同設備的能力、位置、業務運行狀態、資源使用情況,并結合用戶的習慣和意圖,選擇最合適的設備運行分布式任務。分布式任務調度示意圖如圖1.3所示。

圖1.3 分布式任務調度示意圖
利用分布式任務調度機制,可以實現多設備間的能力互助。例如,手機設備拍照具有美顏功能,但在家庭多人合影等場景下,手機屏幕較小,此時可以用手機控制智慧屏的攝像頭,同時還能調用手機的相機美顏功能,并將最終照片傳回手機。
除此之外,還可以通過分布式任務調度,實現業務的無縫遷移。例如在上車前,可以通過手機查找并規劃好導航路線,待上車后,導航會自動遷移到車載大屏和車機音箱,待下車后,導航又會自動遷移回手機。
4.分布式設備虛擬化
分布式設備虛擬化可以實現不同設備的資源融合、設備管理、數據處理,將周邊設備作為手機能力的延伸,共同形成一個超級虛擬終端。針對不同類型的任務,為用戶匹配并選擇能力最佳的執行硬件,讓業務連續地在不同設備間流轉,充分發揮不同設備的資源優勢。分布式設備虛擬化示意圖如圖1.4所示。

圖1.4 分布式設備虛擬化示意圖
5.一次開發,多端部署
HarmonyOS通過提供統一的IDE,進行多設備的應用開發,并且通過向用戶提供程序框架、Ability框架及UI框架,保證開發的應用在多終端運行時的一致性。通過模塊化耦合,對應不同設備間的彈性部署。一次開發,多端部署的示意圖如圖1.5所示。

圖1.5 一次開發,多端部署示意圖
6.統一OS,彈性部署
HarmonyOS擁有“硬件互助,資源共享”和“一次開發,多端部署”的系統能力,為各種硬件開發提供了全棧的軟件解決方案,并保持了上層接口和分布式能力的統一。通過組件化和小型化等設計方法,做到硬件資源的可大可小,以及在多種終端設備間按需彈性部署。
1.1.2 HarmonyOS系統架構
HarmonyOS整體遵從分層設計,從下向上依次為內核層、系統基礎服務層、框架層和應用層。HarmonyOS系統架構如圖1.6所示。

圖1.6 HarmonyOS系統架構
1.內核層
HarmonyOS采用多內核設計(Linux內核、HarmonyOS微內核或者Lite OS),支持針對不同資源受限設備選用適合的OS內核。內核抽象層(KAL)通過屏蔽多內核差異,對上層提供基礎的內核能力,包括進程/線程管理、內存管理、文件系統、網絡管理和外設管等。
2.系統基礎服務層
系統基礎服務層是HarmonyOS的核心能力集合,通過框架層對應用程序提供服務,包含系統基本能力子系統集、基礎軟件服務子系統集、增強軟件服務子系統集、HarmonyOS驅動框架(HDF)和硬件抽象適配層(HAL)、硬件服務子系統集和專有硬件服務子系統集。
3.框架層
框架層為HarmonyOS的應用程序提供了Java/C/C++/JavaScript等多語言的用戶程序框架和Ability框架,以及各種軟硬件服務對外開放的多語言框架API。
4.應用層
應用層包括系統應用和第三方應用。HarmonyOS的應用由一個或多個FA(Feature Ability)或PA(Particle Ability)組成。其中,FA有UI頁面,而PA無UI頁面。FA/PA均能夠實現特定的業務功能,支持跨設備調度與分發,為消費者提供一致、高效的應用體驗。
- Linux運維之道(第3版)
- 每天5分鐘玩轉Kubernetes
- Linux集群和自動化運維
- VMware NSX Cookbook
- Kali Linux高級滲透測試
- Learning BeagleBone
- Windows Vista終極技巧金典
- Advanced Infrastructure Penetration Testing
- Drupal 7 Cookbook
- 鴻蒙HarmonyOS手機應用開發實戰
- bash shell腳本編程經典實例(第2版)
- Learn OpenShift
- Administering ArcGIS for Server
- PrimeFaces Beginner's Guide
- 鴻蒙應用程序開發