應用開發分三種情況:
1.通用開發:各設備通用。
2.原子化服務開發:免安裝應用,可拆可選的專用服務。
3.設備差異化開發:設備專有特性開發
使用HUAWEI DevEch Studio(IDE)作為全場景設備的開發工具。
1.通用開發
通用開發需要了解:
1.鴻蒙系統的定位,架構和技術特性 2.應用開發的基礎概念和知識 3.開發環境,開發工具 4.應用重要組成:ability 5.系統提供兩大類UI:java UI和方舟UI(js/ts ui). 6.多種業務功能:媒體,安全,AI,網絡,設備管理,數據管理,線程,IDL. 7.調試:真機,模擬器 8.發布方式
1.1.1.鴻蒙的定位
面向萬物互聯的時代的分布式操作系統。
適配多種設備(手機、平板,穿戴設備,智慧屏等)的分布式理念,
提供全場景(移動辦公,運動健康,社交通信,媒體娛樂)服務。
鴻蒙系統三大特性:
1.對消費者,所有搭載系統的設備形成一個超級終端,設備間能力互助數據共享。 2.對應用開發,分布式理念,一次開發,多端部署,屏蔽設備差異,開發更聚焦業務。 3.對設備開發,組件化靈活裁剪,統一系統,彈性部署。
1.1.2.技術架構:
分層設計:內核層,系統服務層,框架層,應用層
1.1.2.1.內核層:
內核子系統:內核抽象層屏蔽對多內核支持的差異,
對上提供進程線程,內存,文件,網絡,外設管理等內核功能
驅動子系統:硬件驅動框架對外設提供統一的訪問,驅動開發和管理的能力
1.1.2.2.系統服務層:
是鴻蒙系統的核心能力,通過框架層對應用層提供能力
1.系統基本能力子系統集: 為分布式應用在多設備提供運行調度遷移的基本能力, 包括的子系統:分布式軟件總線,分布式數據管理,分布式調度,方舟多語言運行時候,公共基礎庫,多模輸入,圖形,安全,AI等。 2.基礎軟件服務子系統集: 為鴻蒙系統提供公共的通用服務, 由事件通知,電話,多媒體,DFX,移動感知開發平台,設備虛擬化等子系統組成。 3.增強軟件服務子系統集: 針對不同設備的差異化能力提供增加服務, 由智慧屏專有業務,穿戴設備專有業務,IOT等子系統組成。 4.硬件服務子系統集: 為系統提供硬件服務, 由位置服務,生物識別,穿戴專有硬件服務,IOT專有硬件服務等子系統組成。, 以上子系統集內部可以按系統粒度裁剪,子系統內部還能按功能粒度裁剪,滿足不同設備的部署環境
1.1.2.3.框架層:
為應用開發提供了多語言(java/c/c++/js/ts)的程序框架,ability框架和UI框架
以及軟硬件服務的對外多語言框架api。
1.1.2.3.應用層:
鴻蒙應用由FA(feature ability,有UI界面的)和PA(particle ability,無界面的后台服務)組成。
1.1.3.三大技術特性:
硬件互助,資源共享
一次開發,多端部署
統一系統,彈性部署
1.1.3.1.硬件互助,資源共享
依賴的技術:分布式軟總線/設備虛擬化/數據管理/任務調度等。
分布式軟總線:
為多設備提供分布式通信能力,開發者聚焦業務,無需關注設備鏈接組網方式和底層協議。
比如:手機碰一下料理機就鏈接好讓他做料理
分布式設備虛擬化:
實現不同設備的資源融合,設備管理,數據管理,多設備虛擬成一個超級終端。
比如手機視頻通話,顯示可以用智惠屏,采集用獨立攝像頭,播音用外置音響。
分布式數據管理:
基於分布式軟總線的鏈接能力,用戶數據和應用程序/單一設備分離,所有設備對數據的存儲,訪問一致效果。
比如,手機上的數據投影到智慧屏,智慧屏修改同步手機,其他設備相同賬號也能一致。
分布式任務調度:
基於分布式軟總線,分布式數據管理,分布式profile等,
對跨設備的應用進行統一的服務管理機制(注冊/發現/同步/調用),
對應用實現遠程啟動,調用,鏈接,遷移,根據設備運行狀態和用戶意圖,選擇合適的設備運行任務。 比如:騎行把手機上的導航遷移到手表上繼續嗨。
個人理解:
簡單來說,所有鴻蒙系統的設備組成一個整體,
真實設備之上通過虛擬設備屏蔽差異和統一使用設備,
通過軟總線來統一鏈接各設備,
各設備的數據交給數據管理來做統一管理
通過任務調度來管理所有應用。
1.1.3.2.一次開發多端部署
提供應用框架,ability框架,ui框架讓多設備的業務邏輯和界面邏輯復用。
ui框架支持多語言在不同設備提供多態控件,多種響應式布局適配不同屏幕。
1.1.3.3.統一系統,彈性部署
通過組件化,小型化按需適配不同硬件資源和功能需求,還能通過編譯鏈的關系自動生成組件化的依賴關系。
即
組件可有可無:按需選擇組件
組件可大可小:圖形組件按需選擇控件
平台可大可小:圖形框架組件編譯自動選擇依賴的圖形引擎組件。
1.1.4.安全性
如何保證:正確的人,通過正確的設備,使用正確的數據。
1.1.4.1.通過多端協同互助保證正確的人,具體三方面:
1.零信任,用戶跨設備或者高安全等級操作需要安全認證。 2.多因素融合認證,不同設備的同一個用戶的憑證關聯起來作為一個用戶的認證。 3.讓高安全等級的設備協助低安全等級的設備驗證。
1.1.4.2.保證用戶數據在安全的設備上運行也從三方面:
1.安全啟動: 設備廠商的鏡像包不被替換,各虛擬設備運行的系統固件和應用程序是完整的。 2.可信執行環境: 基於數學可證明的形式化開發和驗證的
設備可信的TEE(Trusted Execution Environment)微內核運行環境,
獲得了商用OS內核CC EAL5+的認證評級。 3.設備證書認證: 為具體可信執行環境的設備
預置PKI(Public Key Infrastructure)設備證書,
證書在產線進行預置,證書私鑰保存在TEE環境中,
並只在TEE環境中進行使用,
傳輸敏感數據先用證書對設備環境進行驗證。
1.1.4.3.正確使用數據五個方面:
數據的全生命周期進行保護。 1.數據的生成:根據相應規范對數據進行分類分級提供安全策略。 2.數據的存儲:不同等級數據存儲在不同安全防范分區。 3.數據的使用:鴻蒙系統通過硬件為設備可信任的執行環境,數據只在可信任的虛擬設備進行運行。 4.數據的傳輸:以設備憑證認證設備的基礎上,建立加密數據通道傳輸數據。 5.數據的銷毀:數據都是基於秘鑰的,銷毀秘鑰即銷毀數據。